Requête MYSQL - Question pratique :o

Répondre
Sammuel
le 12/01/2009 à 18:39
Sammuel
Salut,

Je rencontre un problème au niveau d'une requête MYSQL.

MES TABLES MYSQL :


TABLE RECETTE :
(ID recette) => (ID TYPE RECETTE) => (NOM recette)
1 => 1 => Pomme
2 => 1 => Citrons
3 => 1 => Poire

TABLE TYPE :
(ID TYPE RECETTE) => (NOM TYPE)
1 => TARTE
2 => TOURTE
3 => etc..


J'ai un lien du genre :
cuisine.php?recette_id=2

Cette page affiche la recette n°2. Donc, la recette de la TARTE (ID TYPE RECETTE=1) aux Citrons (ID RECETTE=2). L'ID TYPE RECETTE correspondant à 1 dans la table RECETTE, c'est à dire à TARTE.

J'aimerais savoir si à partir de l'ID RECETTE seul, depuis le lien "cuisine.php?recette_id=2", je pouvais selectionner toutes les recettes ayant le même ID TYPE RECETTE que celui de la recette selectionnée (cuisine.php?recette_id=2).

Donc, à partir de ce lien "cuisine.php?recette=2", j'aimerais que MYSQL me retourne :
=> Tarte à la pomme
=> Tarte aux citrons
=> Tarte à la poire

Ou est ce que je suis obligé d'ajouter une variable "TYPE RECETTE" dans l'url pour avoir au final :
cuisine.php?recette_id=2&type_id=1

Vous allez me dire, pourquoi ne pas directement faire ça :
cuisine.php?type_id=1
?

C'est parceque j'aimerais lister toutes les recettes ayant le même type qu'une recette précise.

Donc, j'aimerais savoir si vous auriez une solution pour faire cela ? et ainsi éviter d'ajouter une deuxième variable dans l'url.

Merci !

PS : La session ne dure pas longtemps sur le forum ! Heureusement que j'ai tapé mon sujet à côté :)
nanar53
le 12/01/2009 à 20:54
nanar53
bonjour,
ce n'est pas un probleme de requete mais de passage d'info non?
car si tu ecris cuisine.php?info=1
dans ta page cuisine tu fais ce que tu veux non?
ou je n'ai rien compris.....
bernard
Sammuel
le 13/01/2009 à 08:59
Sammuel
J'ai trouvé une solution en faisant une jointure sur la table recette, en créer un alias de cette table :

SELECT recette.id_type_recette,recette2.id,recette2.nom
FROM recette
LEFT JOIN recette AS recette2 ON recette2.id_type_recette = recette.id_type_recette
WHERE recette.id_recette = '2'
GROUP BY recette2.id


Cela me retourne :
=> Tarte à la pomme
=> Tarte aux citrons
=> Tarte à la poire
=> Tarte à la pomme
=> Tarte aux citrons
=> Tarte à la poire
=> Tarte à la pomme
=> Tarte aux citrons
=> Tarte à la poire

Et j'ai ajouté un GROUP BY à la fin pour qu'il me retourne :
=> Tarte à la pomme
=> Tarte aux citrons
=> Tarte à la poire
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours