Daten aus zwei Tabellen vergleichen (case when)

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Daten aus zwei Tabellen vergleichen (case when)

Re: Daten aus zwei Tabellen vergleichen (case when)

von Barlee » Mo, 05.04.2010 00:45

Hallo Theo,

ich glaube allmählich zu verstehen, was Du meinst.
Wenn Du mittels CASE WHEN die Auswahl an Datensätzen steuern möchtest (mit der Bedingung, dass CASE WHEN eine 1 zurückgibt), dann musst Du diese in die WHERE Klausel setzen; also:

Code: Alles auswählen

... WHERE
case 
when "Zeit_Datum"."Anfangsdatum" = "Zeit_Datum"."Enddatum" 
and "Zeit_Datum"."Anfangsdatum" = "Bewegliche_Feiertage"."Feiertag" 
then '1' else '0' 
end = 1
In dem Fall würde es dann aber auch folgendes tun:

Code: Alles auswählen

... 
WHERE "Zeit_Datum"."Anfangsdatum" = "Zeit_Datum"."Enddatum" 
AND "Zeit_Datum"."Anfangsdatum" = "Bewegliche_Feiertage"."Feiertag" 
Mit anderen Worten: Ich vermute, dass Du für Deine Aufgabenstellung kein CASE WHEN benötigst. Setze die JOIN Bedingungen einfach in die WHERE Klausel wie im letzten Beispiel aufgezeigt.
Ist es das, was Du suchst?

Gruß Barlee

Re: Daten aus zwei Tabellen vergleichen (case when)

von Barlee » Fr, 02.04.2010 11:30

Hallo theo66,
Base zeigt mir zwar die gewünschten Datensätze an, ruft aber zusätzlich auch Datensätze mit gleichem Datum auf auf die nicht stimmen, also mal mit einer 0 statt einer 1.
Und genau dieses Verhalten legst Du ja mit "ELSE '0'" fest. Lasse dieses einfach weg und es werden nur Datensätze ausgegeben, die allen Bedingungen entsprechen.

Gruß Barlee

Nach oben