【发布时间】:2009-03-20 11:55:36
【问题描述】:
我有三张桌子:
Author(AID, Name)
Title(TID, Name)
AuthorOfTitle(ID, AID, TID)
我的问题是我如何才能只看到没有标题的作者,即在 AuthorOfTitle 中没有记录的作者。如何在 SQL 中执行此操作。顺便说一句,我正在使用 MS Access 2007。
【问题讨论】:
标签: sql ms-access ms-access-2007
我有三张桌子:
Author(AID, Name)
Title(TID, Name)
AuthorOfTitle(ID, AID, TID)
我的问题是我如何才能只看到没有标题的作者,即在 AuthorOfTitle 中没有记录的作者。如何在 SQL 中执行此操作。顺便说一句,我正在使用 MS Access 2007。
【问题讨论】:
标签: sql ms-access ms-access-2007
应该这样做:
SELECT A.*
FROM Author A LEFT JOIN AuthorOfTitle T ON A.AID = T.AID
WHERE T.ID IS NULL
【讨论】:
您可以使用foo not in (select ... from bar) SQL 子查询表达式来执行此操作。
SELECT AID, Name FROM Author
WHERE Author.AID NOT IN (SELECT AuthorOfTitle.AID FROM AuthorOfTitle)
【讨论】: