7.2. Komplexe INSERTs, UPDATEs und DELETEs

Ähnlich wie die SELECT-Anweisung lassen sich auch die Befehle zum Ändern von Dateninhalten mit Fallunterscheidungen, Unterabfragen etc. versehen.

7.2.1. INSERT auf Basis von mehreren Tabellen

Bereits im vorigen Kapitel wurde mit der Anweisung SELECT ... INTO eine neue Tabelle CDMitTracks erzeugt, die sowohl Daten aus der Tabelle CD als auch aus der Tabelle CDTrack beinhaltet. Wenn Sie diese Tabelle nun mit der folgenden Anweisung leeren:

TRUNCATE TABLE CDMitTracks

kann sie später wieder mit einem INSERT gefüllt werden, dessen SELECT-Teil einen JOIN beinhaltet:

INSERT INTO CDMitTracks
SELECT CD.*, CDT.TrackNr, CDT.Titel as TrackTitel
FROM CD LEFT JOIN CDTrack as CDT ON CD.ID = CDT.idCD

Somit können ...

Get Datenbanken entwickeln mit SQL Server 2008 Express Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.