我有两张桌子:
Site:
id | name
1 | google
2 | stackoverflow
3 | cnn.com
Confirm:
id | site_id | type // (type = 1, 2 or 3)
1 | 1 | 2
2 | 2 | 1
所以并且希望得到未添加到表格中的网站以类型为例确认。
SELECT *
FROM Site
LEFT JOIN Confirm
ON Site.id = Confirm.site_id
什么是下一个?
答案 0 :(得分:2)
编写此查询的一种自然方式是NOT EXISTS
查询:
SELECT s.*
FROM Sites s
WHERE NOT EXISTS (SELECT 1 FROM Confirm c WHERE c.site_id = s.id AND type = 1);
几乎是问题陈述的1-1翻译:“希望将未添加到Confirm
的网站设为type = 1”。
答案 1 :(得分:0)
我不明白你的意思。但是,如果您对如何使用数据库中的结果集存在疑问,请查看此内容,也许它可以帮助您:http://www.codeproject.com/KB/database/Visual_SQL_Joins/Visual_SQL_JOINS_orig.jpg