我的数据库中有两个表:
表格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中没有相应的数据。
我的数据库中有两个表:
表格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中没有相应的数据。
使用左连接,它会让你仍然选择那些行,它只会将没有数据的列设置为空
SELECT a.*,b.*
FROM table1 as a
LEFT JOIN
extra as b
ON a.extra_id=b.id
这将为您提供 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