0
我試圖將值設置爲零,如果用戶不存在於我的一個表中。目前,我正在使用解碼來計算符合特定條件的用戶數量,然後顯示結果。顯示默認值解碼Oracle SQL
SELECT T.D_CODE,
T.C_NO,
SUM(DECODE(t.Value, 'A', 1, 0)) AS FirstValue,
SUM(DECODE(t.Value, 'B', 1, 0)) AS SecondValue,
SUM(DECODE(t.Value, 'C', 1, 0)) AS ThirdValue,
SUM(DECODE(t.Value, 'F', 1, 0)) AS LastValue
FROM Table T,
Table OtherTable S
WHERE T.T_SSN = S.SSN(+)
AND T.D_CODE = 'INF'
GROUP BY t.D_CODE,
T.C_NO;
問題是我有一個third table (TT)
它有其他值。如果TT
的值不存在於Table T
中,那麼我需要爲所有Decode值顯示該記錄,其值爲0。
需要的輸出看起來是這樣的:
D_CODE, C_NO, FirstValue, SecondValue, ThirdValue, LastValue INF 600 2 0 0 0 INF 501 0 0 1 0 INF 400 0 0 0 0
哪裏INF 400
不表T存在,只有在表TT
有什麼建議?
示例數據和必需的輸出肯定會有所幫助 –
@JorgeCampos肯定,發佈要求的輸出 – rvisio
我想我明白了,但我不完全確定,所以我會給你一個答案,如果它不是你想要的你在評論中告訴我。另外,如果不是,你將不得不從三個表中添加一些符合你想要的輸出的樣本數據。 –