我需要比較兩個表中的數據,並檢查其歸因是不匹配的,表有相同的表定義,但問題是我力有一個獨特的密鑰進行比較。我試圖用比較不會有兩個表唯一鍵
CONCAT(CONCAT(CONCAT(table1.A, Table1.B))
=CONCAT(CONCAT(CONCAT(table2.A, Table2.B))
,但仍面臨着重複行也試圖NVL上幾列,但沒有奏效
SELECT
UT.cat,
PD.cat
FROM
EM UT, EM_63 PD
WHERE
NVL(UT.cat, 1) = NVL(PD.cat, 1) AND
NVL(UT.AT_NUMBER, 1) = NVL(PD.AT_NUMBER, 1) AND
NVL(UT.OFFSET, 1) = NVL(PD.OFFSET, 1) AND
NVL(UT.PROD, 1) = NVL(PD.PROD, 1)
;
有34K的記錄在另一個表中的一個表35K的記錄,但如果我運行上述查詢,行數爲3百萬。
列在表:
COUNTRY
CATEGORY
TYPE
DESCRIPTION
樣本數據:
表1:
COUNTRY CATEGORY TYPE DESCRIPTION
US C T1 In
IN A T2 OUT
B C T2 IN
Y C T1 INOUT
表2:
COUNTRY CATEGORY TYPE DESCRIPTION
US C T2 In
IN B T2 Out
Q C T2 IN
預期輸出:
column Matched unmatched
COUNTRY 2 1
CATEGORY 2 1
TYPE 2 1
DESCRIPTION 3 0
添加一些樣本表數據和預期的結果。 (以及格式化文本。) – jarlh
也許'除了'將有助於 – HoneyBadger
爲什麼三聯? –