Citat:
Ursprungligen postat av poussard
SELECT
fordon.id,
regNr,
(SELECT GROUP_CONCAT(namn) FROM förare ff WHERE ff.bil=fordon.id) drivers
FROM fordon
LEFT JOIN förare on fordon.id=förare.bil
Poussard: fan va bra. Din SQL-sats returnerar:
0 abc123 Lisa
1 bcd234 Pelle,Eva
1 bcd234 Pelle,Eva
2 cde345 Olle
Det enda problemet nu är att de mellersta två raderna upprepar sig men genom att lägga på DISTINCT på den yttersta SELECT-satsen får man ut:
0 abc123 Lisa
1 bcd234 Pelle,Eva
2 cde345 Olle
Lägger man till ett nytt fordon (efg456) utan någon förare skrivs följande ut:
0 abc123 Lisa
1 bcd234 Pelle,Eva
2 cde345 Olle
3 efg456 NULL
...vilket är precis det jag var ute efter
Tack för hjälpen. Grymt bra!
Edit: klistrar in den fungerande SQL-satsen också:
Kod:
SELECT DISTINCT
fordon.id,
regNr,
(SELECT GROUP_CONCAT(namn) FROM förare ff WHERE ff.bil=fordon.id) drivers
FROM fordon
LEFT JOIN förare on fordon.id=förare.bil