【发布时间】:2021-08-14 08:51:07
【问题描述】:
如何从下面两个表中获取输出(在 SQL Server 2019 中):
在这里,只需交叉检查表 A 和表 B 之间的 Record ID 列。 如果表 B 中没有记录 ID,则需要在输出表中插入“NULL”。
我们在 Query 下尝试过这个,但没有给出正确的输出。
我们怎样才能得到更快更准确的输出。
SELECT A.ID, A.RecordId,A.LineNo, B.Value
FROM TableA A
LEFT JOIN TableB B ON A.RecordId = B.RecordId
提前致谢。
【问题讨论】:
-
请添加更多关于“但是执行需要很长时间”和“没有给出正确的输出”的细节。 “很长一段时间”是多长时间?预期是什么?什么不是“正确的输出”?期望什么?
-
根据问题指南,请不要发布代码、数据、错误消息等的图像 - 将文本复制或输入到问题中。请保留将图像用于图表或演示渲染错误,无法通过文本准确描述的事情。
-
输出不正确。
-
你的预期示例没有意义。首先,您需要 AA,然后 RecordID100 为 NULL。但它始终存在于表 B 中。您必须指定您实际想要的内容。
-
考虑到您的语句“如果表 B 中不存在记录 ID,则需要在输出表中插入 'NULL'”您的所有行都将在表 B 中匹配!
标签: sql sql-server join left-join sql-server-2019