我有以下表格:倒SQL查詢
表1 {ArticleNo(INT),ArtDescription(串)}
表2 {ArticleNo(INT),年份(日期)}
Table1.ArticleNo是主鍵。 Table2.ArticleNo是一個外鍵參考table1.ArticleNo
這是很難解釋我想查詢什麼,所以這裏一個簡單的例子:
表1
(1,Desk)
(2,Chair)
(3,Ruler)
表2
(1,2000)
(1,2000)
(2,2001)
查詢應返回:
1 Desk 2001
2 Chair 2000
3 Ruler 2000
3 Ruler 2001
未在所有年份出售(或其他)(表2,從各年)的所有文章。
我希望你能理解我的例子 - 查詢似乎很複雜。在這裏我的解決方案:
SELECT table1.ArticleNo,table1.ArtDescription,table2.Year
FROM table1
JOIN table2
ON table1.ArticleNo=table2.ArticleNo
WHERE NOT table1.ArticleNo IN (SELECT table2.Year FROM table2);
我嘗試了很多不同的事情..我希望你能幫助我!
我想你可能要重新考慮你的表模式。這將非常迅速地變得非常複雜,並沒有提供任何直接的好處。也許你的第二張桌子應該是商品出售的年份,而不是出售。 – 2010-11-14 13:40:26
在你的例子中,「WHERE NOT table1.ArticleNo IN(SELECT table2.Year FROM table2)」;你在比較ArticleNo到一年。從你永遠不會匹配的數據示例。 – 2010-11-14 13:59:12
您正在使用哪個數據庫引擎? – Quassnoi 2010-11-14 17:02:23