我正在尝试匹配不同的交易,但我无法找到为什么这不起作用。问题出在上一个FROM (c.ClientId from #amount1)
。我试图使用临时表和CTE,甚至直接尝试完整的子查询。我也尝试了NOT EXISTS
,但我对NOT IN
感兴趣,所以我想要NULL
值。
SELECT *
into #transactions
FROM #amount1
UNION ALL
SELECT *
FROM #amount2
UNION ALL
select c.ClientId,
c.ClientName,
c.Date
t.currency
from #clients c
LEFT JOIN transaction t ON c.ClientId = t.ClientID
WHERE c.ClientId NOT IN ( c.ClientId from #amount1)
AND c.ClientId NOT IN ( c.ClientId from #amount2)
非常感谢。
更新:我的错误是我错过了SELECT:
WHERE c.ClientId NOT IN ( SELECT ClientId from #amount1)
AND c.ClientId NOT IN ( SELECT ClientId from #amount2)
我很抱歉。我很新,我经常有这样的错误,但这次我没有意识到。
感谢您的帮助。
答案 0 :(得分:5)
它不应该起作用,因为它没有意义。
尝试这样的事情:
WHERE c.ClientId NOT IN ( select [clientid] from #amount1)
[clientid]
是#amount1
你也必须在第二个NOT IN
条款中也这样做。