PHP Join meerdere tabellen
Ik had al wat gezocht, maar kon het niet echt vinden. Ik ben momenteel met een website bezig welke nogal een complexe database zal gaan bevatten. Hierom ben ik van plan PHP join te gebruiken. Ik heb hier al verschillende artikeltjes over gelezen, maar echt begrijpen doe ik het nog niet.
Mijn databasestructuur voor het betreffende onderdeel:
============
games
============
game_id
game_name
game_description
game_genre
etc.
============
games_images
============
image_id
image_game_id
image_link
etc.
============
games_reviews
============
review_id
review_game_id
review_description
etc.
Nu heb ik met behulp van Foreign Keys bij de tabellen games_images en games_reviews de velden image_game_id en review_game_id gelinkt naar de tabel games met het veld game_id.
Nu wil ik op de website de velden game_name, image_link en review_description uitlezen waar bijv. game_id = 2. Zover ik wijzer ben geworden moet ik dit doen met een MULTIPLE JOIN. Maar hoe ik die join nou precies moet maken, dat begrijp ik niet helemaal. Kan iemand er - van uit gaande van bovenstaande tabellen - een voorbeeld voor maken?
Dat zou fijn zijn.
Meer informatie nodig? Zeg het even, dan laat ik het weten.
Bedankt alvast.
http://www.youtube.com/watch?v=YMlDCL_xNJs
Tutorial: 127, 128, 129
Check: Tutorial: 127, 128, 129
Je hebt een foute opbouw van je tabellen, je moet namelijk in de onderliggende tabellen altijd een referentie hebben naar de bovenliggende tabel
Ger van Steenderen op 15/09/2011 18:00:42:
En wat denk je dat de foreign keys doen? Die zijn volgens de ts aangemaakt.Je hebt een foute opbouw van je tabellen, je moet namelijk in de onderliggende tabellen altijd een referentie hebben naar de bovenliggende tabel
Terug naar het onderwerp:
Zoiets zal het worden:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
SELECT
*
FROM
games
JOIN games_images ON game_id = image_game_id
JOIN game_reviews ON game_id = review_game_id
WHERE
game_id = 2;
*
FROM
games
JOIN games_images ON game_id = image_game_id
JOIN game_reviews ON game_id = review_game_id
WHERE
game_id = 2;
Gewijzigd op 15/09/2011 18:41:23 door Bartje Jansen