1
編輯:我正在查找DISTINCT NUMERIC
,同時在查詢中包含CLOB。Oracle在查詢中獲得帶有CLOB的DISTINCT數字
我有兩個關係。
關係的一個:
LOGID_NBR NUMBER (12)
APPID_NBR NUMBER (2)
EVENTID_NBR NUMBER (10)
KEYID_NBR NUMBER (8)
KEYVALUE VARCHAR2 (100 Byte)
ARGUMENTSXML VARCHAR2 (4000 Byte)
SENTINDICATOR CHAR (5 Byte)
RECEIVED_DATEDATE DATE sysdate
LAST_UPDATED DATE sysdate
TEXTINDICATOR VARCHAR2 (5 Byte)
UPSELL_ID VARCHAR2 (5 Byte)
GECKOIMAGEIND CHAR (1 Byte)
DELIVERYTYPE VARCHAR2 (30 Byte)
關係的兩個:
LOGID_NBR NUMBER (12)
INPUT_ARGS CLOB
我質疑的關係如下:
SELECT EVENTID_NBR, INPUT_ARGS
FROM RELATION_ONE, RELATION_TWO
WHERE RELATION_ONE.LOGID_NBR = RELATION_TWO.LOGID_NBR AND
EVENTID_NBR BETWEEN 143 AND 192 AND
EVENTID_NBR != 172 AND SYSDATE - 7 >= RELATION_ONE.LAST_UPDATED
ORDER BY EVENTID_NBR;
我收到了我的結果設置得相同EVENTID_NBR
往往只對DISTINCT
結果感興趣。然而,加入DISTINCT
關鍵字查詢,如:
SELECT DISTINCT EVENTID_NBR, INPUT_ARGS ...
產生以下錯誤結果:
[Error] Execution (8: 32): ORA-00932: inconsistent datatypes: expected - got CLOB
於是,我開始搜索網如何解決這個問題,發現this甚至this。我將這個CLOB轉換成了什麼樣的結果,使DISTINCT EVENTID_NBR
及其關聯的CLOB
能夠出現在我的結果集中?
重複應該讓你進一步瞭解如何獲得DISTINCT數據集。但是,我會重新考慮這是否是問題所在,如果您首先需要DISTINCT,那麼就可以解決問題。難道你的數據庫是不正確的正常化? – Ben
@我需要一個獨特的因爲每個'EVENTID_NBR'都有一個不同的'CLOB'。因此,我可能有一百個'EVENTID_NBR = 143',但每個都有一個不同的CLOB,因此,我只對'DISTINCT'對感興趣。 – Mushy
因此,對於單個eventid_nbr,您有一堆不同的input_args(CLOB)值,並且在同一個eventid_nbr中某些input_args是相同的? – Bob