1
我想知道是否有人能夠幫助我處理我正在處理的DB2查詢?從查詢返回空行
我基本上試圖在Control Number
上的兩個表DB2Cust
和NOTIFICATION_REQUE
之間做左外連接。
我想返回DB2Cust
中的所有行,但是,在NOTIFICATION_REQUE
我想選擇最大Notice_DT
並僅返回該記錄。
下面的查詢是我到目前爲止。
它很接近,但它不會返回DB2Cust
中不存在的控制號碼NOTIFICATION_REQUE
。
SELECT
C.CONTROL_NO,
NR.CONTROL_NBR,
COALESCE(C.LNAME,'') AS LNAME,
COALESCE(C.FNAME,'') AS FNAME,
COALESCE(CAST(NR.NOTICE_DT AS VARCHAR(10)), '') AS NOTICE_DT
FROM WITC00DS.DB2CUST C
LEFT OUTER JOIN WITC00DS.NOTIFICATION_REQUE NR
ON C.CONTROL_NO = NR.CONTROL_NBR
AND C.AGENT_CODE = 'HR' AND C.STW_DATE BETWEEN '01/01/2000' AND '01/17/2014'
WHERE NR.NOTICE_DT = (SELECT MAX(NOTICE_DT)
FROM WITC00DS.NOTIFICATION_REQUE ZZ
WHERE ZZ.CONTROL_NBR = C.CONTROL_NO)
戈登您好,感謝您的幫助......然而,當我嘗試上面的第一個解決方案我得到「與JOIN操作符關聯的ON子句或MERGE語句無效SQLSTATE = 42972」。 – user2997454
@ user2997454。 。 。看起來,DB2不支持該語法(儘管其他數據庫可以)。無論如何,我更喜歡第二個版本。 –