gpt4 book ai didi

mysql - 使用 where not exists 检索不在用户文档中的记录

转载 作者:行者123 更新时间:2023-11-30 22:01:19 30 4
gpt4 key购买 nike

我有一个查询可以检索用户分配给他们的文档。有些用户丢失了一些文件我想检索用户需要完成这些文档的应用程序中不存在的文档。以下是我的查询我被困在不存在的地方。此查询不返回任何记录,我知道其中一些用户没有此文档

SELECT  T.PRAC_ID, T.Document_ID, T.DocumentName, S.DOC_ID FROM
**#TMP_PRCS T-- this is the table that contains the doucments the users have** LEFT OUTER JOIN
**#tmp_doclookup S -- this is the doc look up table that contains userid and doc id.** ON T.PRAC_ID = S.PRAC_ID WHERE NOT EXISTS
(SELECT DOC_ID FROM #TMP_PRCS L WHERE S.PRAC_ID = L.prac_id) ORDER
BY PRAC_ID, DOCUMENT_ID

最佳答案

WHERE 将您的左连接变成了内连接。将该条件添加到连接的 ON 子句中。

select T.PRAC_ID,
T.Document_ID,
T.DocumentName,
S.DOC_ID
from #TMP_PRCS T
left outer join #tmp_doclookup S on T.PRAC_ID = S.PRAC_ID
and not exists ( -- Use "and" here instead of "where"
select DOC_ID
from #TMP_PRCS L
where S.PRAC_ID = L.prac_id
)
order by PRAC_ID,
DOCUMENT_ID

关于mysql - 使用 where not exists 检索不在用户文档中的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43238887/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com