我有两个表,我希望显示第一个表中的所有记录,其中连接它们的字段不在第二个表中。
$sql = "SELECT d.*,t.id from `donations` d
JOIN `teams` t
ON d.teamid = t.id
WHERE t.id IS NULL";
换句话说,我想加入捐款和团队。但我想只从团队表中没有团队字段的捐款中检索记录。
以上显示零记录,并没有做到这一点。
感谢您的任何建议。
答案 0 :(得分:3)
SELECT d.*,t.id from `donations` d
LEFT OUTER JOIN `teams` t
ON d.teamid = t.id
WHERE t.id IS NULL
答案 1 :(得分:1)
您可以使用子查询。
select * from donations
where teamid not in (
select id from teams
)
那应该选择所有团队中没有出现的团队捐款。