naar meerdere id's in andere tabel verwijzen
Gewijzigd op 01/01/1970 01:00:00 door Karin php
Zoiets:
Ik weet niet of je hier ook nog een 'gewoon' id (als Primary key) bij moet zetten. Ook zou je op deze manier erbij kunnen zetten hoeveel gram o.i.d.
De beste manier is een koppel tabel maken.
De database structuur ziet er dan b.v. zo uit:
------------
Tabel: recepten
receptid (INT, Primary key, auto_increment)
naam (VARCHAR)
------------
Tabel: recepten_naar_ingredienten
receptid (INT, Primary key)
ingredientid (INT, Primary key)
------------
Tabel: ingredienten
ingredientid (INT, Primary key, auto_increment)
naam (VARCHAR)
die koppeltabel snap ik niet. hoe zorg je dan dat je salade krijgt die niet alleen uit sla bestaat?
Je hebt je product-id?
Die staan ook in die tabel.
maar hoe selecteer je dan meerdere rijen? kan iemand een voorbeeld geven.
Selecteer de ingrediënten van recept 1.
Code (php)
1
2
3
4
5
2
3
4
5
SELECT ingredientid, naam
FROM ingredienten i,
recepten_naar_ingredienten rni
WHERE rni.receptid = 1
AND i.ingredientid = rni.ingredientid
FROM ingredienten i,
recepten_naar_ingredienten rni
WHERE rni.receptid = 1
AND i.ingredientid = rni.ingredientid
In de koppel tabel (recepten_naar_ingredienten) zit dan b.v. :
-------------------------
receptid | ingredientid
1 | 1
1 | 2
1 | 3
2 | 1
2 | 4
De eerste kolom is het recept id en de 2e het ingrediënt id.
Recept 1 en 2 bevatten beiden hetzelfde ingrediënt namelijk het ingrediënt met id 1.
Gewijzigd op 01/01/1970 01:00:00 door Martijn B
Martijn! schreef op 03.09.2009 21:50:
Recept 1 en 2 bevatten beiden hetzelfde ingrediënt namelijk het recept met id 1.
... namelijk het ingrediënt met id 1