如何从一个表中找到另一个缺失的值?

Nas*_*bee 3 sql-server t-sql sql-server-2008-r2

我是一名初级开发人员。我被要求创建一个子查询来解决这个问题。如果问题不清楚,请告诉我,以便我提供更多详细信息。

我有两张桌子,ArticleAuthor。我的任务是执行以下操作:

选择 Author 表中不存在的不同 Author 值。结果不应包含任何为 NULL 或空字符串的作者。目的是查找在文章表中但不在作者表中的任何作者姓名。

我在两个表中都有作者列。这个问题可以通过连接这两个表来解决吗?

我试过了

select distinct name 
from author 
where name NOT IN ( select author 
                    from article 
                    where author IS NOT NULL)
Run Code Online (Sandbox Code Playgroud)

它没有给我想要的结果:(

pap*_*zzo 5

select author from article where author IS NOT NULL and author <> ''
except 
select name   from author
Run Code Online (Sandbox Code Playgroud)

因为任何比较 null 都是假的我认为下面的工作

select author from article where author <> ''
except 
select name   from author
Run Code Online (Sandbox Code Playgroud)