如何选择另一个表中的某些信息为NULL的信息

时间:2013-06-29 08:19:19

标签: mysql

我的数据库中有两个表:

表1

id name extra_id
1  name1   2
2  name2   4
3  name3   6
4  name3   2

表2称为额外

id blah blah
1  blah1 blah2
3  blah1 blah2
5  blah1 blah2
6  blah1 blah2

现在我想在table1中选择id:1和id:2以及id:4,并通过extra_id选择group,因为table2中没有相应的数据。

2 个答案:

答案 0 :(得分:0)

使用左连接,您仍然可以选择这些行,它只会将没有数据的列设置为空

SELECT a.*,b.*
FROM table1 as a
LEFT JOIN 
extra as b
ON a.extra_id=b.id

答案 1 :(得分:0)

这将为您提供表1中的“额外”中没有对应行的ID 没有必要分组,因为只有一列。

SELECT DISTINCT Table1.id 
FROM Table1
LEFT JOIN extra 
  ON Table1.extra_id=extra.id
WHERE extra.id IS NULL

>> 1
>> 2
>> 4

An SQLfiddle to test with