Ich habe "CASE myfield is NULL then ... ENDCASE" und ähnliches oft benutzt, wenn Datensätze mit LEFT OUTER JOIN verknüpft wurden und nicht sicher war, daß die Felder im rechten Segment überhaupt gefüllt waren. Die Sätze mit NULL-en können nämlich nicht anders abgefragt werden. Das ist besonders bei Datumsfeldern problematisch ...

Außerdem habe ich in diesen Fällen oft Ersatzwerte für die NULL-Felder erzeugt. Da sehe ich überhaupt den Hauptzweck von CASE. Die CASE-Clause steht dann also an der Position eines selektierten Feldes. Sie muß natürlich immer einen Wert liefern, und ggf. mit OTHERWISE abgesichert werden.