Tach!
Ich habe es nun so umgesetzt
WHERE IFNULL(ADDDATE(m2.datum, INTERVAL m.tage2 DAY) < now(),ADDDATE(m1.datum , INTERVAL m1.tage1 DAY) < now())
> und es scheint genau das zu machen, was ich erreichen wollte.
Wann immer NULL in einem Ausdruck auftaucht, ist das Ergebnis NULL (Ausnahmen sind die speziellen NULL-Operatoren à la IS NULL und einige Funktionen). Somit wird der erste Teilausdruck zu NULL, wenn m2.datum oder m.tage2 NULL sind. Und dann wird halt der m1-Ausdruck verwendet. Soweit scheint dein Scheinen auch mit der Logik übereinzustimmen.
> Verstehe ich Dich richtig, daß
> ~~~sql
> WHERE IFNULL(ADDDATE(m2.datum, m.tage2) < now(),ADDDATE(m1.datum , m1.tage1) < now())
>
ebenfalls korrekt gewesen wäre?
Verifiziere meine (und anderer) Aussagen am besten mit der offiziellen Dokumentation.
dedlfix.