Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/01/2008, 15h02   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 3
Points : 2
Points : 2
Par défaut [SQL] Problème de résultat de requete SQL

Tout d'abord bonsoir et bonne année à tous !

Voici ma requête :
Code :
1
2
3
4
5
6
7
SELECT p.id_prod, p.ref_prod, c.categorie_nom, g.genre_nom, m.marque_name, p.statut_prod 
FROM produits p, marques m, genre g, categorie c 
WHERE p.prod_marque_id=m.marque_id 
AND p.prod_genre_id=g.genre_id 
AND c.categorie_id=p.prod_cat_id 
AND prod_cat_id=1 
OR prod_cat_id IN (select categorie_id from categorie where categorie_parent_id=1)
Cette requête me permet de recupérer les produits dont le numéro de categorie est égale à 1 (dans cette exemple) mais aussi les sous catégories de cette catégorie.

Citation:
exemple : je veux tous les produits de la catégorie VETEMENT ou des catégories T-shirt, PULL, JEANS etc...
Le problème c'est que le resultat de cette requête me renvoie une drole de liste :

Citation:
1 PR154/65G Textille homme Levis 0
1 PR154/65G Textille homme Nike 0
1 PR154/65G Textille homme Adidas 0
1 PR154/65G Textille homme Lotto 0
1 PR154/65G Textille homme Puma 0
1 PR154/65G Textille femme Levis 0
1 PR154/65G Textille femme Nike 0
1 PR154/65G Textille femme Adidas 0
1 PR154/65G Textille femme Lotto 0
1 PR154/65G Textille femme Puma 0
1 PR154/65G Textille unisexe Levis 0
1 PR154/65G Textille unisexe Nike 0
1 PR154/65G Textille unisexe Adidas 0
1 PR154/65G Textille unisexe Lotto 0
1 PR154/65G Textille unisexe Puma 0
1 PR154/65G Textille enfant Levis 0
1 PR154/65G Textille enfant Nike 0
1 PR154/65G Textille enfant Adidas 0
1 PR154/65G Textille enfant Lotto 0
1 PR154/65G Textille enfant Puma 0
1 PR154/65G Textille garçon Levis 0
1 PR154/65G Textille garçon Nike 0
1 PR154/65G Textille garçon Adidas 0
1 PR154/65G Textille garçon Lotto 0
1 PR154/65G Textille garçon Puma 0
1 PR154/65G Textille fille Levis 0
1 PR154/65G Textille fille Nike 0
1 PR154/65G Textille fille Adidas 0
1 PR154/65G Textille fille Lotto 0
1 PR154/65G Textille fille Puma 0
En sachant que normalement ce produit fait partie de genre HOMME, catégorie Textille et de marque LEVIS :s

J'espère que je me suis fait comprendre sur mon problème en vous remerciant d'avance sur votre futur aide
nans_13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2008, 15h16   #2
Membre actif
 
Inscription : août 2002
Messages : 194
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 194
Points : 194
Points : 194
Envoyer un message via MSN à Léortien
Citation:
Envoyé par nans_13 Voir le message
[.......]En sachant que normalement ce produit fait partie de genre HOMME, catégorie Textille et de marque LEVIS :s

J'espère que je me suis fait comprendre sur mon problème en vous remerciant d'avance sur votre futur aide
non je n'ai pas compris .....
une requête renvoit ce qu'elle doit renvoyer, comme toujours
si elle ne renvoit pas ce qu'on attend c'est juste que l'on mal formulé dans la requête ce qu'on attendait

si tu voulais uniquement les produits de genre HOMME, catégorie Textille et de marque LEVIS il fallait ajouter des clauses dans le WHERE pour chaque limitation (genre homme, catégorie textile, marque levis)...

(accessoirement prendre le temps d'expliquer chaque champ et les structure des tables ne serait pas un mal)
__________________
Tout le monde savait que c'était impossible. Il est venu un imbécile qui ne le savait pas et qui l'a fait.
(\ _ /)
(='.'=) Voici Lapinou. Aidez le à conquérir le monde
(")-(") en le reproduisant.


Spidercochon, spidercochon, il peut marcher au plafond
...MM ......Voici Spidercochon. Aidez le à conquérir le monde
E(....)~....en le reproduisant.
...w
Léortien est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2008, 15h19   #3
Membre Expert
 
Avatar de jbrasselet
 
Homme Julien Brasselet
Ingénieur développement logiciels
Inscription : mars 2006
Messages : 952
Détails du profil
Informations personnelles :
Nom : Homme Julien Brasselet
Âge : 32
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mars 2006
Messages : 952
Points : 1 382
Points : 1 382
Envoyer un message via MSN à jbrasselet
Ce ne serait pas un problèpme de parenthèses avec ton OR ?
Essaye de mettre des paranthèses après ton dernier AND et fermer à la fin de ton OR
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai.
jbrasselet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2008, 15h21   #4
Invité de passage
 
Inscription : janvier 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 3
Points : 2
Points : 2
Merci jbrasselet ça marche ! merci pour la rapidité de réponses !
nans_13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h24.


 
 
 
 
Partenaires

Hébergement Web