0

我的数据库中有两个表:

表格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分组,因为table2中没有相应的数据。

4

2 回答 2

0

使用左连接,它会让你仍然选择那些行,它只会将没有数据的列设置为空

SELECT a.*,b.*
FROM table1 as a
LEFT JOIN 
extra as b
ON a.extra_id=b.id
于 2013-06-29T08:22:27.737 回答
0

这将为您提供 Table1 中在“额外”中没有相应行的 id。
无需分组,因为只有一列。

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

>> 1
>> 2
>> 4

一个用于测试的 SQLfiddle

于 2013-06-29T08:27:43.090 回答