Hallo zusammen,
ich arbeite an einer Dokumentendatenbank und bin auf ein SQL-Problem gestoßen, dass ich mit meiner bescheidenen SQL-Kenntnis nicht lösen konnte und hoffe nun auf Eure Hilfe.
Meine Tabelle 'docs' hat u.a. Felder für Empfänger-ID (toID) und Absender-ID (fromID) über die die entsprechenden Datensätze meiner Tabelle 'addresses' identifiziert werden.
Jetzt möchte ich per SQL die Informationen zu einem Dokument erhalten und z.B. die Name von Absender und Empfänger herrausfinden
Wenn ich nur einen von beiden brauche ist es kein Problem
SELECT addresses.name as 'Empfänger', ... WHERE addresses.ID=docs.toID
oder
SELECT addresses.name as 'Absender', ... WHERE addresses.ID=docs.fromID
Allerdings weiß ich nicht wie ich beides verknüpfen kann.
Im Voraus vielen Dank für eure Tips,
Steffan.
SQL-Abfrage
Moderator: Moderatoren
Hallo Steffan,
also du musst eine Abfrage mit zwei JOIN machen oder mit SUBSELECT (je nach Datenbank) Bin zwar etwas aus der Übung, müsste aber so funktionieren:
Ich hoffe ich habe mich nicht vertippt. Falls du MYSQL benutzt empfehle ich dir das kostenlose Handbuch http://downloads.mysql.com/docs/refman-4.0-de.a4.pdf Seite 313.
Da findest du genaue Angaben wie du deinen SELECT aufbauen kannst / musst.
Solltest du noch Fragen haben, stell Sie einfach.
Grüße
Jörg
also du musst eine Abfrage mit zwei JOIN machen oder mit SUBSELECT (je nach Datenbank) Bin zwar etwas aus der Übung, müsste aber so funktionieren:
Code: Alles auswählen
SELECT
(SELECT name
FROM addresses
WHERE id = me.toID) as 'Empfänger',
(SELECT name
FROM addresses
WHERE id = me.fromID) as 'Absender'
FROM docs me
Code: Alles auswählen
SELECT absender,
empfänger
FROM docs
JOIN addresses ON (docs.toID=addresses.ID) as empfänger
JOIN addresses ON (docs.fromID=addresses.ID) as absender
WHERE ...
Da findest du genaue Angaben wie du deinen SELECT aufbauen kannst / musst.
Solltest du noch Fragen haben, stell Sie einfach.
Grüße
Jörg
IBM Thinkpad R40 - Cetrino (Pentium-M 1400) / 512 MB / 80GB HDD / Windows XP Pro & Suse 10.2
[gelöst] SQL-Abfrage
Hallo Jörg,
vielen Dank, das hat geklappt!
Beste Grüße,
Steffan
vielen Dank, das hat geklappt!
Beste Grüße,
Steffan