Hallo an alle ,
ich bräuchte bitte eure Hilfe.
Es geht um eine Abfrage, die folgendes machen soll:
Also ich habe 2 Tabellen.
In beiden Tabellen existiert eine Spalte mit einem Datumswert.
Tabelle lpers1 die Spalte P_ARB_EINTR (DATE)
Tabelle larbv die Spalte VD_KOZ_EINT (DATE)
Meine Abfrage soll: Vergleich von L_pers1.p_arb_eintr mit L_Arbv.vd_koz_eintr
früheres Datum zählt. Das Problem ist das dass in der Tabelle L_ARBV weniger Datensätze sind als in L_PERS1. Also wenn in der Tabelle L_LABRV keine Einträge oder keine DS gespeichert, sind dann sollen die Werte aus der Tabelle L_PERS1. Spalte P_ARB_EINTR genommen werden. Meine Abfrage sieht dann so aus:
Ich bekomme aber spalten zurück in dem null drinnen steht. Also keine Werte.
Kann mir bitte jemand sagen was falsch an meine Abfrage ist.
Ich bedanke mich im Voraus.
mfg. f_mal
ich bräuchte bitte eure Hilfe.
Es geht um eine Abfrage, die folgendes machen soll:
Also ich habe 2 Tabellen.
In beiden Tabellen existiert eine Spalte mit einem Datumswert.
Tabelle lpers1 die Spalte P_ARB_EINTR (DATE)
Tabelle larbv die Spalte VD_KOZ_EINT (DATE)
Meine Abfrage soll: Vergleich von L_pers1.p_arb_eintr mit L_Arbv.vd_koz_eintr
früheres Datum zählt. Das Problem ist das dass in der Tabelle L_ARBV weniger Datensätze sind als in L_PERS1. Also wenn in der Tabelle L_LABRV keine Einträge oder keine DS gespeichert, sind dann sollen die Werte aus der Tabelle L_PERS1. Spalte P_ARB_EINTR genommen werden. Meine Abfrage sieht dann so aus:
Code:
SELECT DISTINCT L.MANDANT, LV.VD_VERTR_AB, L.p_nummer, case when LV.VD_KOZ_EINTR is null then L.P_ARB_EINTR when L.P_ARB_EINTR is null then LV.VD_KOZ_EINTR when LV.VD_KOZ_EINTR is null then L.P_ARB_EINTR when L.P_ARB_EINTR < LV.VD_KOZ_EINTR then L.P_ARB_EINTR else LV.VD_KOZ_EINTR end EINTRITTSDATUM FROM LPERS1 L, LARBV LV WHERE L.P_NUMMER (+)= LV.p_nummer AND L.MANDANT (+)= LV.MANDANT and LV.VD_VERTR_AB = ( select max(lv2.VD_VERTR_AB) from LARBV LV2 where LV2.P_NUMMER = L.P_NUMMER and lv2.MANDANT = L.MANDANT ) order by L.p_nummer
Kann mir bitte jemand sagen was falsch an meine Abfrage ist.
Ich bedanke mich im Voraus.
mfg. f_mal
Comment