ich habe diese Abfrage in Oracle:füllt Nullwert von Funktionsergebnis mit Case-Anweisung
WITH LOANS_PRINCIPAL
AS
(SELECT
MASKAN_RATE.RATE,
HRS.FN_GETREMIND_BY_DATE(PERSON_DOCK.ID,'2016/01/01') AS PRINCIPAL_DOCK
FROM
HRS.TBCONTINUES_PERSON_DOCK PERSON_DOCK
LEFT JOIN HRS.TBMASKAN_REPAY_CATEGORY MASKAN_REPAY_CAT
ON MASKAN_REPAY_CAT.ID = PERSON_DOCK.DOCK_REQUEST_DETAIL_ID
LEFT JOIN HRS.TBFACILITY_MASKAN_RATE MASKAN_RATE
ON MASKAN_RATE.ID = MASKAN_REPAY_CAT.FACILITY_MASKAN_RATE_ID
LEFT JOIN HRS.TBFACILITY_MASKAN FACILITY_MASKAN
ON FACILITY_MASKAN.ID = MASKAN_RATE.FACILITY_MASKAN_ID
LEFT JOIN HRS.TBPERSONNEL STAFF
ON STAFF.ID=FACILITY_MASKAN.PERSONNEL_ID
WHERE FACILITY_MASKAN.STATE_CODE = 7
AND STAFF.NO=95801
AND FACILITY_MASKAN.MASKAN_FACILITY_TYPE_CODE = 4
AND PERSON_DOCK.IS_CANCELED_CODE = 2
AND PERSON_DOCK.CANCEL_DATE IS NULL
AND MASKAN_REPAY_CAT.FACILITY_DOCK_TYPE_CODE = 1
AND FACILITY_MASKAN.FAMILY_ID IS NULL)
SELECT *
FROM LOANS_PRINCIPAL
PIVOT (SUM (PRINCIPAL_DOCK)
FOR RATE in (4,7,12,13,14,16,10))
und Ergebnis ist:
(null) 245.221.991 97.611.272 (null) (null) (null) (null)
ich brauche mit Null diesen Null-Wert zu füllen, es vorziehen, mit Case-Anweisung
danke, das ist für mich sehr hilfreich, CASE-Ausdrücke nur eine Idee und nicht notwendig für dieses Problem, i NVL verwendet, funktioniert aber nicht –