blubberblase
Mitglied
Hallo liebe Community!
Ich sitze grad auf Arbeit und verzweifel ein bisschen mit einer MySQL Abfrage für eine Internetseite. Es handelt es sich um eine Datenbank wo "Experten" zu unterschiedlichen Fachgebieten gespeichert sind.
Folgende Tabellen gibt es: experten (id, name, vorname, titel, anrede ......), experten_details (experte_id, type, bundesland, einrichtung....), experten_specialization (id, expert_id, specialization_id), specialization (id, specialization)
Es geht darum, dass ich eine Übersicht aller eingetragenen Experten erstellen möchte. Soweit funktioniert das auch schon. Mein Query lautet:
Er gibt mir also zu den normalen Angaben eines Experten auch die Daten aus der Tabelle experten_details mit aus.
Nun möchte ich aber zusätzlich noch die Spezialisierungen passend zum Experten mit ausgeben. In der experten_specialization steht die ID des Experten (expert_id) und die ID der Spezialisierung (specialization_id). In der letzten Tabelle specialization sind die Namen der Spezialisierungen samt ID gespeichert.
Nun muss das alles ja irgendwie zusammengefügt werden.
Mein Plan sah so aus:
Aber er scheint hier durcheinander zu kommen. Muss ich mehrere Joins machen oder wie muss das aufgebaut sein?
P.S.: Die Struktur der Datenbank ist leider vorgegeben...da könnte ich nichts ändern.
Vielen Dank schon mal!
Grüße
Marcel
Ich sitze grad auf Arbeit und verzweifel ein bisschen mit einer MySQL Abfrage für eine Internetseite. Es handelt es sich um eine Datenbank wo "Experten" zu unterschiedlichen Fachgebieten gespeichert sind.
Folgende Tabellen gibt es: experten (id, name, vorname, titel, anrede ......), experten_details (experte_id, type, bundesland, einrichtung....), experten_specialization (id, expert_id, specialization_id), specialization (id, specialization)
Es geht darum, dass ich eine Übersicht aller eingetragenen Experten erstellen möchte. Soweit funktioniert das auch schon. Mein Query lautet:
Code:
$query = "SELECT * FROM experten, experten_details WHERE experten.id = experten_details.experte_id
Er gibt mir also zu den normalen Angaben eines Experten auch die Daten aus der Tabelle experten_details mit aus.
Nun möchte ich aber zusätzlich noch die Spezialisierungen passend zum Experten mit ausgeben. In der experten_specialization steht die ID des Experten (expert_id) und die ID der Spezialisierung (specialization_id). In der letzten Tabelle specialization sind die Namen der Spezialisierungen samt ID gespeichert.
Nun muss das alles ja irgendwie zusammengefügt werden.
Mein Plan sah so aus:
Code:
$query = "SELECT * FROM experten, experten_details, specializations AS s LEFT JOIN experten_specialization AS e ON (e.specialization_id=s.ID) WHERE experten.id = experten_details.experte_id";
Aber er scheint hier durcheinander zu kommen. Muss ich mehrere Joins machen oder wie muss das aufgebaut sein?
P.S.: Die Struktur der Datenbank ist leider vorgegeben...da könnte ich nichts ändern.
Vielen Dank schon mal!
Grüße
Marcel