Update abhängig von zweiter Tabelle

Hallo,

ich benötige Hilfe bei einem Updatecode. Bin Anfänger!

Ich habe die Tabelle Kunden und Beleg. Ich möchte nun in meiner Tabelle Kunden das Feld Klassifizierung ändern, wenn der Kunde einen Auftrag in der Belegtabelle hat.

In der Kundentabelle gibt es das Feld Kundennr und in der Belegrabelle Adressnr

Wenn in Kunden die Klassifizierung nein ist, der Kunde aber in der Belegtabelle einen Auftrag hat dann soll in Kunden die Klassifizierung auf Ja geändert werden.

Für eure Hilfe wäre ich dankbar.

hier mein Code

Update kunden
set KLASSIFIZIERUNG = “Ja”
Where KLASSIFIZIERUNG = “Nein”
from kunden.kundennr = beleg.adressnr
and Beleg.BELEGTYP = “V”
and Beleg.BELEGART = “AU”

Und? Funktioniert das? Fehler? Welche?

update kunden set "KLASSIFIZIERUNG" = 'ja' where kundennr in (select adressnr from beleg where BELEGTYP='V' and BELEGART = 'AU');

Ungetestet. Dein gezeigter Code ist suboptimal, weil z.B. die Tabelle beleg auch mal Beleg heißt und Du " statt ’ für String-Konstanten verwendest. Ich hab das weitestgehend so gelassen, weil nur via Copy&Paste…

Außerdem ist nicht klar, ob Du das nun einmalig mit solch einem SQL machen willst oder ob Du via TRIGGER bei jedem neuen Beleg, der die Kriterien erfüllt, die Kunden klassifizieren willst.


Andreas

Hallo Andreas,

danke klappt auch soweit, jedoch habe ich in meinem Feld Klassifizierung
noch andere Werte stehen, deshalb darf nur dort Ja reingeschrieben werden von nein in der Klassifizierung steht.

Die Aktion wird nur einmal zur Aktualisierung ausgeführt.

Gruß Sulimann

Ja, dann schreib das als weitere WHERE-Bedingung halt dazu.

Andreas

Danke!

Gruß Sulimann