MSSQL Update Statement auf Select ausführen

Loki2

Erfahrenes Mitglied
Hallo

Wie kann ich bei MSSQL ein Update auf das Ergebnis einer Select Abfrage ausführen? Ich mache ein ziemlich aufwendiges Select mit inner join usw. und möchte dann innerhalb dieses ResultSets eine Spalte auf einen bestimmten Wert setzen.

Ist das irgendwie verständlich was ich meine?

Ich hoffe ihr könnt mir helfen.

Danke.

Gruß und so,
Loki2
 
Hallo,

ich kenne mich mit MSSQL nicht so genau aus, aber ich denke es sollte ähnlich sein wie bei Oracle.

hier

im ersten Link findest du z.B.:

SQL:
UPDATE titles
    SET t.ytd_sales = t.ytd_sales + s.qty
    FROM titles t, sales s
    WHERE t.title_id = s.title_id
    AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

Naja, das wird dann bei dir wohl zu sowas wie:

SQL:
UPDATE spalte
    SET spalte = neuerWert
    FROM deinAufwendigesSelectMitInnerJoinUsw
    WHERE WennEsMehrAlsEineZeileGibt
    AND NochMehrEinschränkungen

hoffe, ich konnte helfen!
Grüße
 
Zuletzt bearbeitet von einem Moderator:
Zurück