【发布时间】:2019-02-13 12:38:16
【问题描述】:
我有一个包含以下字段的表格。
- 订单编号
- 物品编号
我的表有以下条目。
我想比较两个 OrderId 并获得一个结果,以了解两个 Order 中存在哪些 ItemId,哪些不存在。
我需要的结果如下。
ItemId: 200 存在于两个订单中。
ItemId: 201 存在于 100 中,而不存在于 101 中
ItemId: 202 和 203 存在于 101 中,而不存在于 100 中。
我不确定这是否可以通过 SQL 完成。
任何帮助将不胜感激。提前致谢。
用于测试的 SQL 脚本:
Create table #Orders(OrderId INT, ItemId INT)
Insert into #Orders Select 100, 200
Insert into #Orders Select 100, 201
Insert into #Orders Select 101, 200
Insert into #Orders Select 101, 202
Insert into #Orders Select 101, 203
【问题讨论】:
-
“我不确定这是否可以通过 SQL 完成” - 几乎所有你想做的事情都可以在 SQL 中完成^^
-
总是两个订单吗?您想比较两个订单的所有组合吗?
-
是的。我想比较两个订单。
-
请通过编辑而非 cmets 进行澄清。请对minimal reproducible example 采取行动并点击谷歌搜索“stackexchange 作业”并展示你能做什么。请使用文本而不是图像/链接作为文本——包括表格和 ERD。仅使用图像来增加文本或提供无法通过文本提供的内容。
标签: sql sql-server join jointable