繁体   English   中英

从一个表中查找不存在于另一个表中的记录,以及从第三个表映射的用户

[英]Find records from one table which don't exist in another & users mapped from third table

我是SQL的新手,请尝试动手。

寻找一种有效的方法来获取用户表中存在但临时表中不存在的用户(*)

有三个表:

Temp:

member_no | name

User:

endUserId | name 

Login:

member_no | endUserId

我尝试了这个但没有用:

SELECT * 
FROM User LEFT OUTER JOIN
     Temp
      ON User.endUserId = (SELECT TOP 1 e.endUserId
                           FROM User e JOIN
                                LOGIN l
                                ON e.endUserId = l.endUserId 
                           WHERE l.username = Temp.member_no
                          )

提前致谢

如果您希望不处于临时状态的用户not existsnot in not exists ,请注意:

select u.*
from user u
where not exists (select 1
                  from temp t join
                       login l
                       on t.memberno = l.memberno
                  where l.endUserId = u.endUserId
                 );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM