两个 Table 返回相似数据
Two Table Returning Similar Data
我已经尝试了所有我能想到的连接,但无法解决:(
我有两张桌子
Table X 和 Table Y
两个表都包含项目代码和数量
我正在寻找的是可以帮助我进行比较的东西
理想情况下,我想看到这样的东西,这可能吗?
示例数据
TableX
+-----------+-----+
| Item Code | QTY |
+-----------+-----+
| A | 1 |
+-----------+-----+
| B | 2 |
+-----------+-----+
| C | 3 |
+-----------+-----+
Table Y
+-----------+-----+
| Item Code | QTY |
+-----------+-----+
| A | 1 |
+-----------+-----+
| D | 2 |
+-----------+-----+
| E | 3 |
+-----------+-----+
最终结果我想看到这样的东西:
+-----------+-------------+-------------+
| Item Code | TABLE X QTY | Table Y QTY |
+-----------+-------------+-------------+
| A | 1 | 1 |
+-----------+-------------+-------------+
| B | 2 | 0 |
+-----------+-------------+-------------+
| C | 3 | 0 |
+-----------+-------------+-------------+
| D | 0 | 2 |
+-----------+-------------+-------------+
| E | 0 | 3 |
+-----------+-------------+-------------+
这是否可行请帮助
这看起来像 full join
select coalesce(x.item, y.item) as item,
coalesce(x.qty, 0) as x_qty, coalesce(y.qty, 0) as y_qty
from x full join
y
on x.item = y.item
尝试使用 full outer join
...
SELECT
ISNULL(X.[Item Code],Y.[Item Code]) AS [Item Code],
ISNULL(X.QTY,0) AS [TABLE X QTY],
ISNULL(Y.QTY,0) AS [TABLE Y QTY]
FROM X
FULL OUTER JOIN Y
ON X.[Item Code] = Y.[Item Code]
我已经尝试了所有我能想到的连接,但无法解决:(
我有两张桌子
Table X 和 Table Y
两个表都包含项目代码和数量
我正在寻找的是可以帮助我进行比较的东西
理想情况下,我想看到这样的东西,这可能吗?
示例数据 TableX
+-----------+-----+
| Item Code | QTY |
+-----------+-----+
| A | 1 |
+-----------+-----+
| B | 2 |
+-----------+-----+
| C | 3 |
+-----------+-----+
Table Y
+-----------+-----+
| Item Code | QTY |
+-----------+-----+
| A | 1 |
+-----------+-----+
| D | 2 |
+-----------+-----+
| E | 3 |
+-----------+-----+
最终结果我想看到这样的东西:
+-----------+-------------+-------------+
| Item Code | TABLE X QTY | Table Y QTY |
+-----------+-------------+-------------+
| A | 1 | 1 |
+-----------+-------------+-------------+
| B | 2 | 0 |
+-----------+-------------+-------------+
| C | 3 | 0 |
+-----------+-------------+-------------+
| D | 0 | 2 |
+-----------+-------------+-------------+
| E | 0 | 3 |
+-----------+-------------+-------------+
这是否可行请帮助
这看起来像 full join
select coalesce(x.item, y.item) as item,
coalesce(x.qty, 0) as x_qty, coalesce(y.qty, 0) as y_qty
from x full join
y
on x.item = y.item
尝试使用 full outer join
...
SELECT
ISNULL(X.[Item Code],Y.[Item Code]) AS [Item Code],
ISNULL(X.QTY,0) AS [TABLE X QTY],
ISNULL(Y.QTY,0) AS [TABLE Y QTY]
FROM X
FULL OUTER JOIN Y
ON X.[Item Code] = Y.[Item Code]