Hoe kan ik met SQL een kolom uit een referentie tabel halen?
Het is alweer te lang geleden.
Ik heb een hoofdtabel "items" met de velden: Id, naam, inhoud.
Er is een referentietabel "Labels" met de velden Id, labeltekst
Er is een koppeltabel "ItemLabel" met de velden Id, ItemID, LabelID.
Nu wil ik een select maken waarbij er een uitdraai is van de hoofdtabel "items" met de kolomen Id, naam, inhoud, label
Een gewone sql query is dan SELECT Id, naam, inhoud FROM Items
Hoe ziet de query eruit waarbij de labeltekst wordt opgezocht voor die rij uit de koppeltabel en de referentietabel?
Toegevoegd na 10 minuten:
OK ik heb nu dit...
SELECT items.id, labels.text, items.title, items.text
FROM items
INNER JOIN ItemLabel
ON items.id=ItemLabel.Item
INNER JOIN Labels
ON ItemLabel.Label=Labels.ID
Maar dit geeft alleen nog maar de items die ook een label hebben. Terwijl er ook items zijn ZONDER labels. De query moet alle items zijn (met en zonder label).
Toegevoegd na 12 minuten:
Laat maar, ik ben eruit (dank zij w3schools). Het is zo lang geleden...
SELECT items.id, labels.text, items.title, items.text
FROM items
LEFT JOIN ItemLabel
ON items.id=ItemLabel.Item
LEFT JOIN Labels
ON ItemLabel.Label=Labels.ID