# MSSQL Update Statement auf Select ausführen



## Loki2 (21. Juli 2010)

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


----------



## FrankBooth (22. Juli 2010)

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.:


```
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:


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

hoffe, ich konnte helfen!
Grüße


----------

