Hilfe bei SQL-Abfrage benötigt

Tom G

Angesehenes Mitglied
Hallo,

ich bräuchte Hilfe bei einer etwas komplexeren (für mich zumindest!) SQL-Abfrage.

Es geht um eine Literatursammlung.

Folgende Tabellen gibt es:

CODE tabelle1:
Buchtitel | Autor-ID
So spielt das Leben | 0
Wundersame Geschichten | 0




CODE tabelle2:
Autorname | Buchtitel
Herbert Müller | So spielt das Leben
Stefanie Meyer | Wundersame Geschichten




CODE tabelle3:
Autorname | Autor-ID
Herbert Müller | 1
Stefanie Meyer | 2





Die SQL-Abfrage soll nun jeden Buchtitel aus tabelle1 nacheinander durchlaufen, zu jedem Buchtitel den passenden Autor (aus tabelle2) + passende Autor-ID (tabelle3) suchen und zum Schluss die richtige Autor-ID in tabelle1 ergänzen.

Am Ende sollte tabelle1 folgendermaßen aussehen:

CODE Buchtitel | Autor-ID
So spielt das Leben | 1
Wundersame Geschichten | 2




Wie könnte hierfür eine passende SQL-Abfrage aussehen?


Vielen Dank für eure Unterstützung!
 
Könnte z.B. so aussehen:

UPDATE tabelle1 SET [Autor-ID]=(SELECT TOP 1 tabelle3.[Autor-ID] FROM tabelle2 INNER JOIN tabelle3 ON tabelle2.Autorname=tabelle3.Autorname WHERE tabelle2.Buchtitel = tabelle1.Buchtitel)

Das Ganze geht auch ohne Unterabfrage, nämlich nur mit JOINs, allerdings können manche SQL-Datenbanken das nicht immer. Da es vermutlich eine einmalige Abfrage ist, spielt die Performance ja nicht so eine große Rolle, vermute ich.

HTH
Alex


 
Zurück
Oben