Enrico: Update mit Case inkl. Where

Beitrag lesen

Hallo liebe Forum-User,

ich benutze eine Oracle Datenbank in der kostenfreien 10gXE-Version.
Ich habe nun folgendes Problem, ich würde gern ein Update mit ein paar Case-Anweisungen durchführen (siehe Beispiel : klappt auch):

update t_test
set test_bemerkung = Case
       WHEN (feld1 is NULL or feld2 = 'alle')
     THEN  'nein'
       WHEN (feld1 is 'BLUB' or feld2 = 'sonstiges')
     THEN  'bemerkung2'
     .
     .
     . usw.
     .
     .
     else 'TEST'

Diese Case-Anweisung funktioniert auch, nun möchte ich aber hinter dem Else eine Where Klause anfügen:

update t_test
set test_bemerkung = (Case
       WHEN (feld1 is NULL or feld2 = 'alle')
     THEN  'nein'
       WHEN (feld1 is 'BLUB' or feld2 = 'sonstiges')
     THEN  'bemerkung2'
     .
     .
     . usw.
     .
     .
     else 'TEST' ) WHERE ID = '1234'

Aber dies funktioniert nicht. Wie kann ich die Case-Anweisung mit Hilfe einer Where-Klausel einschränken ohne die in jede Zeile schreiben zu müssen.

Vielen vielen Dank für euere Anregungen, Tipps und Hilfen.

MfG Enrico