半复杂数据库查询

时间:2013-04-11 17:29:29

标签: mysql

我在mysql中有两个表。

  • 表1包含一个名为app_id
  • 的列
  • 表2包含一个名为id
  • 的列

我需要创建一个查询,该查询将显示表1的id中不存在app_id的任何行的所有表1列。例如:

表1:

app_id 
1    
2    
3    
4    
5

表2:

id   
1    
3    
4    
5

因此,我的结果将是表1中显示app_id=2的列,因为表2中未找到

2 个答案:

答案 0 :(得分:1)

你可以做到

SELECT app_id FROM tableOne WHERE app_id NOT IN(SELECT id from tableTwo)

答案 1 :(得分:0)

只需执行左连接,然后选择不匹配的行:

SELECT * FROM table_1 LEFT JOIN table_2 ON table_1.app_id = table_2.id WHERE table_2.id IS NULL;