我有两张桌子:
TABLE_1
ID_1 | VALUES_1
1 | 123
2 | 234
3 | 345
TABLE_2
ID_2 | VALUES_2
1 | 123
2 | 234
3 | 349
4 | 456
5 | 567
6 | 678
我正在进行内部联接以比较两个表中的值:
SELECT ID_1, VALUES_1, TABLE_2.VALUES_2
FROM TABLE_1,TABLE_2
WHERE
TABLE_1.ID_1 = TABLE_2.ID_2 AND
TABLE_1.VALUES_1 <> TABLE_2.VALUES_2
这给了我感兴趣的行,
ID_1 | VALUES_1 | VALUES_2
3 | 345 | 349
有没有办法在查询中插入第三列以显示VALUES_1
和VALUES_2
之间的差异? E.g。
ID_1 | VALUES_1 | VALUES_2 | DIFFERENCE
3 | 345 | 349 | 4
答案 0 :(得分:1)
SELECT
ID_1
,VALUES_1
,TABLE_2.VALUES_2
,TABLE_2.VALUES_2 - VALUES_1 as Differnce
FROM
TABLE_1
INNER JOIN TABLE_2
ON TABLE_1.ID_1 = TABLE_2.ID_2
AND TABLE_1.VALUES_1 <> TABLE_2.VALUES_2
注意我还将您的查询转换为使用显式连接语法而不是隐式连接,因为这是更标准的方法。