Mysql Select Befehl über 3 Tabellen?
Guten Tag zusammen!
Ich habe eine kleine Frage bezüglich Mysql.
Zur Fragestellung: Die Frage wäre "Welche Mitglieder organisieren Veranstaltungen in einem bestimmten Ort?"
Ich habe hierzu 3 Tabellen:
Mitglieder_table
| MNr | Name | Vorname |
Organisiert_table
| MNr | VNr |
Veranstaltung_table
| VNr | Ort |
*MNr = Mitglied ID, VNr = Veranstaltungs ID
Bisher habe ich diese Aufgabe mittels diesem Befehl gelöst:
SELECT Name, Vorname FROM Mitglied
WHERE MNr IN (SELECT MNr FROM organisiert WHERE VNr = '1' OR VNr = '3');
Ich habe aber das Gefühl, dass bei wachsenden Veranstaltungen dieser Befehl nicht zu brauchen ist. Da muss es doch ne Möglichkeit geben mit mehr Logik, in der man den Ort gezielt abholen kann?
Hoffe mir kann einer helfen.
Beste Grüsse
Rdklie
Ich habe eine kleine Frage bezüglich Mysql.
Zur Fragestellung: Die Frage wäre "Welche Mitglieder organisieren Veranstaltungen in einem bestimmten Ort?"
Ich habe hierzu 3 Tabellen:
Mitglieder_table
| MNr | Name | Vorname |
Organisiert_table
| MNr | VNr |
Veranstaltung_table
| VNr | Ort |
*MNr = Mitglied ID, VNr = Veranstaltungs ID
Bisher habe ich diese Aufgabe mittels diesem Befehl gelöst:
SELECT Name, Vorname FROM Mitglied
WHERE MNr IN (SELECT MNr FROM organisiert WHERE VNr = '1' OR VNr = '3');
Ich habe aber das Gefühl, dass bei wachsenden Veranstaltungen dieser Befehl nicht zu brauchen ist. Da muss es doch ne Möglichkeit geben mit mehr Logik, in der man den Ort gezielt abholen kann?
Hoffe mir kann einer helfen.
Beste Grüsse
Rdklie
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 257895
Url: https://administrator.de/contentid/257895
Ausgedruckt am: 20.11.2024 um 04:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo,
Du brauchst doch bloß die Tabellen im SQL-Statement zu verknüpfen:
Für eine bestimmte MNr einfach die where-Bedingung ergänzen:
Gruß,
Gersen
Du brauchst doch bloß die Tabellen im SQL-Statement zu verknüpfen:
select t1.mnr, t1.vorname, t1.name, t2.vnr, t3.ort from mitglieder t1, organisiert t2, veranstaltung t3 where t1.mnr = t2.mnr and t2.vnr = t3.vnr
and t1.mnr = ...
Gruß,
Gersen
Zitat von @Gersen:
Hallo,
Du brauchst doch bloß die Tabellen im SQL-Statement zu verknüpfen:
Für eine bestimmte MNr einfach die where-Bedingung ergänzen:
Gruß,
Gersen
Hallo,
Du brauchst doch bloß die Tabellen im SQL-Statement zu verknüpfen:
select t1.mnr, t1.vorname, t1.name, t2.vnr, t3.ort from mitglieder t1, organisiert t2,
> veranstaltung t3 where t1.mnr = t2.mnr and t2.vnr = t3.vnr
and t1.mnr = ...
Gruß,
Gersen
Ja aber dann:
From tabelle1 t1, tabelle2 t2, tabelle3 t3
Liebe Grüße
ITvortex