我開始了一個查詢這樣:ORA-00932(不一致的數據類型:預期 - 有CLOB)的錯誤,我不明白
SELECT A.*
FROM TABLE_A A
INNER JOIN TABLE_B B
ON A.YEAR = B.YEAR
WHERE A.ID IN (SELECT ID FROM TABLE_B)
上述查詢給我重複的記錄,所以我增加了DISTINCT
關鍵字爲這樣:
SELECT DISTINCT A.*
FROM TABLE_A A
INNER JOIN TABLE_B B
ON A.YEAR = B.YEAR
WHERE A.ID IN (SELECT ID FROM TABLE_B)
這第二個查詢給了我以下錯誤:
ORA-00932: inconsistent datatypes: expected - got CLOB
- 00000 - "inconsistent datatypes: expected %s got %s"
我終於糾正了查詢,並通過WHERE
子句中移動狀態的INNER JOIN
這樣消除了重複記錄:
SELECT A.*
FROM TABLE_A A
INNER JOIN TABLE_B B
ON A.YEAR = B.YEAR
AND A.ID = B.ID
我只是不明白,爲什麼第二個查詢沒有工作。爲什麼在這裏添加DISTINCT
關鍵字突然出現問題?
感謝您的參考,我期待着不僅僅是在編寫SQL時深入Oracle。 – Jake