一个sql语句的写法,有点不是很清楚
table a:
goods_name goods_detail goods_memo flag
萝卜 好吃 很好吃 蔬菜
黄瓜 难吃 很难吃 蔬菜
苹果 好吃 难吃 水果
苹果 好吃 难吃 水果
table b:
goods_name goods_detail goods_memo flag
萝卜 好吃 很好吃 蔬菜
黄瓜 难吃 很难吃 蔬菜
李子 好吃 难吃 水果
李子 好吃 难吃 水果
苹果 难吃 难吃 水果
2个表没有主键
现在想找出table b比table a 多了几条记录,当flag=水果的时候
在这里例子里面,结果是3条记录,李子和苹果都是flag=水果,table b中有李子,table a中没有李子,然后b表中的苹果中的goods_detail字段与a表中的字段也不同,所以也要计算进去
------解决方案--------------------
SQL code
select count(*) from b x where not exists(select 1 from a where goods=x.goods and goods_detail=x.goods_detail )and flag=蔬菜