Ja, du kannst die betroffenen Datensätze in eine temp. Tabelle schreiben und dann in deinem UPDATE Statement benutzen.
Code:
CREATE TEMPORARY TABLE tmpTab
SELECT AuftragNr, Arbeitsgang
FROM Tabelle A
WHERE Rueckmeldung IS NULL
AND Arbeitsgang <
( SELECT Max( Arbeitsgang )
FROM Tabelle
WHERE AuftragNr = A.AuftragNr
AND Rueckmeldung = 'Fertig' );
UPDATE Tabelle
SET Rueckmeldung = 'Fertig'
WHERE ( AuftragNr, Arbeitsgang ) IN ( SELECT AuftragNr, Arbeitsgang
FROM tmpTab );
DROP TABLE tmpTab;
SQL Fiddle DEMO
Wenn du sicherstellen willst, dass diese Fehler nicht mehr auftauchen, so würde ich einen TRIGGER (INSERT,UPDATE) empfehlen, der dieses gewährleistet.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)