MySQL-SELECT-Abfrage auf mehrere Tabellen

LLaehn

Grünschnabel
Hallo,

DB-Beispiel :
members:
member_id;Mfeld1
1;'test'
2;'test2'

players:
member_id;Pfeld1
1;'test'
2;'test2'

skills:
member_id;Sfeld1
1:'suche1'
2:'suche2'

ich habe folgende SQL Abfrage :
SELECT M.*, P.*
FROM members AS M
LEFT JOIN players as P ON M.member_id=P.member_id";
WHERE M.guild_id=1;
Es werden also die Werte von members ausgegeben. Wenn die member_id in player drin ist, werden diese Werte zu dem result hinzugefügt.
Ergebnis
member_id;Mfeld1;Pfeld1
1;'test';'test'


Nun möchte ich jedoch noch eine 3. Tabelle hinzubringen.
Es gibt eine Tabelle skills. Hier möcte ich nach einem bestimmten wert mit Sfeld1='suche2' suchen und alle gefunden member_id aus der Tabelle members und players nach dem oberen Schema extrahieren.
Gewünschtes ergebnis:
member_id;Mfeld1;Pfeld1
2;'test2';'test2'


Ich hoffe, dass war so verständlich :confused:

vielleicht weiss ja jemand von euch rat.

danke
lars
 
Hab derweil noch ein bisschen weitergegoogelt und folgendes gefunden (Für alle, die es interessiert):

SELECT M.*, P.*
FROM members AS M
LEFT JOIN skills as S ON S.member_id=M.member_id
LEFT JOIN players as P ON M.member_id=P.member_id
WHERE M.guild_id=1 AND S.skill_name='Searchvalue';

so funktioniert es.

trotzdem danke

gruss
lars
 
Hallo,
ich habe es nur kurz korrigiert, muss wie folgt aussehen:
SELECT M.*, P.*
FROM members AS M
LEFT JOIN skills as S ON S.member_id=M.member_id
LEFT JOIN players as P ON M.member_id=P.member_id
WHERE M.member_id=1 AND S.sfeld1='Searchvalue'
 

Neue Beiträge

Zurück