【发布时间】:2017-04-09 05:42:43
【问题描述】:
我有以下数据:
TABLE1:
ADDRESS INTER1 INTER2
12345 E AVE STREET 44444 55555555
888 OtherStreet 44444 55555555
TABLE2:
ADDRESS INTER1 INTER2
12345 E AVE STREET 44444 55555555
我大概可以这样在代码中解决:
if(tblOneInterOne == tblTwoInterOne ) {
// compare address
}
,但希望在 SQL 中解决。
SELECT
A.ADDRESS
, A.INTER1
, A.INTER2
FROM TABLE1 AS A
LEFT JOIN TABLE2 AS B
ON A.INTER1 = B.INTER1
AND A.INTER2 = B.INTER2
AND A.ADDRESS <> B.ADDRESS
当与上面的 SQL 比较时,我的数据结果仍然得到这个地址:12345 E AVE STREET。我也尝试过加入子查询,我也尝试过分组和按 asc 排序。我没主意了。
预期输出:如果从 TABLE1 中选择,则匹配前两个整数,如果匹配,则比较地址。如果匹配,则不显示。如果不匹配,则显示不匹配的地址。反之亦然,如果从 TABLE2 中选择,则匹配前两个整数。如果匹配,则比较地址,如果不匹配,则显示应为空(无数据)。
任何帮助将不胜感激。
谢谢。
【问题讨论】:
-
你的预期输出是什么
-
好问题。我已将预期的输出添加到我的问题中。谢谢你Utsav。
标签: sql database join db2 compare