Souscis avec une requete MySQL
Résolu/Fermé
balal
-
13 août 2005 à 01:27
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 - 13 août 2005 à 11:09
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 - 13 août 2005 à 11:09
Bonsoir, en fait c'est cette requete qui a des soucis d'exécution alors qu'elle me semble correcte
select * from articles where ( select code_categorie from categorie)
Ellle me semble logique pourtant....
Je compte sur vous et merci...
select * from articles where ( select code_categorie from categorie)
Ellle me semble logique pourtant....
Je compte sur vous et merci...
A voir également:
- Souscis avec une requete MySQL
- Mysql community server - Télécharger - Bases de données
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Virus
- Error 2002 (hy000): can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock' (2) ✓ - Forum Linux / Unix
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table ✓ - Forum Java
2 réponses
kilian
Messages postés
8732
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
5 février 2025
1 526
13 août 2005 à 02:08
13 août 2005 à 02:08
Salut,
Ca dépend. Si tu utilises:
Alors mysql n'ira pas chercher plus loin: si valeur est faux (ex: 0 ou NULL) c'est comme si on te disait :
Va me chercher des donuts dans la véranda là ou 0 est vrai.
Si tu es un processeur discipliné, tu regarderas dans ta véranda:
il n'y a aucun recoin ou 0 n'est vrai. Donc aucun endroit ou tu puisses prendre des donuts.
Par contre, si on te dis:
...et si valeur est égal à autre chose que 0 ou NULL (soit une valeur habituelle: un entier, une chaine, etc....), c'est comme si on te demandait (exemple: remplace valeur par 1).
Cours me chercher des choux rouges dans le placard là ou 1 est vrai.
Là tu iras chercher des choux rouges partout puisque 1 est toujours vrai.
C'est un peu ça que tu as fait dans ta requête (sans compter que tu as plusieurs résultats qui vont sortir de ta requête imbriquée. Là je ne sais pas comment ça va réagir mais probablement pas comme tu le veux.
Ca ne sert pas à grand chose d'utiliser WHERE valeur
Par contre on utilise souvent WHERE colonne=valeur
J'imagine que tu as une clé étrangère dans articles qui se rapporte à code_categorie de la table categorie.
Peut être voulais tu faire un select par rapport à certaines valaurs de ta table:
Ca dépend. Si tu utilises:
SELECT donuts FROM veranda WHERE valeur
Alors mysql n'ira pas chercher plus loin: si valeur est faux (ex: 0 ou NULL) c'est comme si on te disait :
Va me chercher des donuts dans la véranda là ou 0 est vrai.
Si tu es un processeur discipliné, tu regarderas dans ta véranda:
il n'y a aucun recoin ou 0 n'est vrai. Donc aucun endroit ou tu puisses prendre des donuts.
Par contre, si on te dis:
SELECT choux_rouge FROM placard WHERE valeur
...et si valeur est égal à autre chose que 0 ou NULL (soit une valeur habituelle: un entier, une chaine, etc....), c'est comme si on te demandait (exemple: remplace valeur par 1).
Cours me chercher des choux rouges dans le placard là ou 1 est vrai.
Là tu iras chercher des choux rouges partout puisque 1 est toujours vrai.
C'est un peu ça que tu as fait dans ta requête (sans compter que tu as plusieurs résultats qui vont sortir de ta requête imbriquée. Là je ne sais pas comment ça va réagir mais probablement pas comme tu le veux.
Ca ne sert pas à grand chose d'utiliser WHERE valeur
Par contre on utilise souvent WHERE colonne=valeur
J'imagine que tu as une clé étrangère dans articles qui se rapporte à code_categorie de la table categorie.
Peut être voulais tu faire un select par rapport à certaines valaurs de ta table:
select * from articles where article.code_categorie=( select categorie.code_categorie from categorie WHERE condition)Ou un autre truc dans le style....
ceddec
Messages postés
148
Date d'inscription
dimanche 31 juillet 2005
Statut
Membre
Dernière intervention
10 mars 2012
82
13 août 2005 à 11:09
13 août 2005 à 11:09
Bonjour,
je tiens à signaler que les sous-requetes ne fonctionne qu'à partir de MySQL4.1, cf. http://dev.mysql.com/doc/mysql/fr/subqueries.html
je tiens à signaler que les sous-requetes ne fonctionne qu'à partir de MySQL4.1, cf. http://dev.mysql.com/doc/mysql/fr/subqueries.html