mysql查询数据的同时对它进行删除操作

2018-06-04 10:06:43

今天遇见一个问题,需要把mysql数据库里面的 商品主表 和它的每一个条目对应不上的数据给全部删除(数据如下图);也就是整理一下数据库里的数据保证数据的可用;

但是出现了问题; 我是先查出来productId 然后判断主表里的哪些productId不在这些productId里面直接删除,之前是这个样子写的

delete from wy_product_v1 where productId not in(select wy_product_v1.productId from wy_product_v1,wy_product_item where wy_product_v1.productId=wy_product_item.productId);

报错

MySQL中You can't specify target table for update in FROM clause错误的意思是说,不能先select出同一表中的某些值,再update这个表(在同一语句中)。

但是改成下面写法就可以了:

delete from wy_product_v1 where productId not in(

select w.productId from(

select wy_product_v1.productId from wy_product_v1,wy_product_item where wy_product_v1.productId=wy_product_item.productId

) w

);

  • 2020-02-06 13:32:10

    android.os.NetworkOnMainThreadException

    在Android 4.0以上,网络连接不能放在主线程上,不然就会报错android.os.NetworkOnMainThreadException。但是4.0下版本可以不会报错。

  • 2020-02-07 23:46:44

    You must call removeView() on the child's parent first解决办法

    出现这样的情况最多是发生在recyclerView中,holder复用的过程中,多次添加view,第一次添加的时候view有了父类了,可能就是复用引起的。 我是发生在给recyclerView添加广告view的时候发生的。

  • 2020-02-11 17:43:35

    基于VCamera,仿微信录制短视频

    vcamera.so这个确实挺好用,可定制性也挺高,但是确定也不小,需要引入的这个so包,10M啊。对于安装包苛刻的用户,这是致命啊。 我现在是抛弃他了。但是在这里还是记录一下用法吧。防止以后再用他。

  • 2020-02-13 13:37:53

    mysql随机排序

    首页热门栏目需要随机显示几条信息