2012-07-10 51 views
1

我有2个表:水果和蔬菜 水果是如下:SQL语句返回的结果不存在匹配

id - name  - weight 
0 apple  2 
1 banana  4 
2 strawberry 7 
3 oranges  5 

蔬菜如下:编号,名称,颜色,重量,维生素领域/列

id - name  - color - weight - vitamins 
0 tomato    1  
1 pumpkin   5 
2 eggplant   4 

我想返回的结果,其中重量是不是在左表(水果) 在这种情况下,这将是相同的:苹果,草莓 这将是最好的方法,请

回答

4

SELECT * FROM水果,其中重量不(选择重量从蔬菜)

+2

http://sqlfiddle.com/#!2/4bb74/1 – biziclop 2012-07-10 04:36:05

4

Deepesh的解决方案是完美的,但这里是用左手的解决方案加入:

http://sqlfiddle.com/#!2/4bb74/2

SELECT fruit.* 
FROM  fruit 
LEFT JOIN vegetable ON vegetable.weight = fruit.weight 
WHERE vegetable.id IS NULL 
1

试试这个代码

 SELECT * FROM Fruits WHERE NOT EXISTS (SELECT * FROM vegetables WHERE vegetables.weight = fruits.weight)