if Abfrage in SQL

eagle1985

Mitglied
Hallo zusammen,

weiss jemand wie ich eine IF-Contains-Abfrage in SQL realisieren kann?

ich habe ein SQL welches in etwa folgende Resulate liefert:
Code:
Name           Status
Muster Max     OK
Muster Hans    NOK

Sollte nun ein Status auf NOK stehen, darf nichts passieren, ansonsten kann ich mit den Daten weiterarbeiten und ein SQL-UPDATE auf besagten Personen durchführen.

Geht das mit SQL oder muss ich heirführ PS/SQL verwenden?

Gruss
 
PS/SQL - Ergo arbeitest du mit Oracle.

Dazu brauchst du doch kein IF. Das ist ein einfaches WHERE

SQL:
UPDATE
    mytable
SET
    feld = 123
WHERE
    status = "OK"
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

danke für die Antwort.
Leider geht das nicht, denn sobald ein Status NOK ist, darf gar nichts gemacht werden.
Das Update darf nur durchgeführt werden, wenn alle den Status OK haben
 
Ah, ietzt versteh ich.
Eine Unterabfrage tut da das was du willst. So etwa könnt es gehen
SQL:
UPDATE
    mytable
SET
    feld = 123
WHERE
    0 = (SELECT COUNT(*) FROM mytable WHERE status = "NOK" GROUP BY status)
 
Zuletzt bearbeitet von einem Moderator:
Zurück