|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Bonjour,
Je voudrais "simplifier" la requête suivante sur MYSQL 5: Code :
Je voudrais simplement mettre une seule fois la clause, c'est-à-dire à la dernière ligne (ep.oid = 15) et éliminer les autres, là où j'ai mis le commentaire /* ici */ J'ai essayé de mettre dans les sous-requêtes mais SQL me donne une erreur, ep est l'alias de la table EQUIPE dans le from de la requête principale : Code :
ERROR 1054 (42S22): Unknown COLUMN 'ep.oid' IN 'where clause' Merci par avance. |
||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
Quelque chose dans ce genre ?
Code :
Bon courage
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
||
|
|
00
|
|
|
#3 | ||
|
Membre Expert
![]() Responsable de service informatique Inscription : janvier 2009 Messages : 1 092 ![]() |
Bonjour,
Tu peux faire une requête de ce style: Code SQL :
Tatayo. |
||
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() |
peux tu nous poster des exemples des données?
|
|
|
00
|
|
|
#5 | ||
![]() ![]() Alain Ingénieur d'études décisionnel Inscription : mai 2002 Messages : 4 446 ![]() |
Comme ça ?
Code :
__________________
Modérateur Langage SQL N'oubliez pas le bouton et pensez aux balises [code]Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur ![]() |
||
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Sylvain DevidalChef de projets Générix Inscription : février 2010 Messages : 1 062 ![]() |
Je verrais bien un truc du genre :
Code :
|
||
|
|
00
|
|
|
#7 | ||||||||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Bonjour,
Pour faire simple, j'ai un échantillon du championnat de football de L1 de cette année. La création des deux tables : Code :
Code :
Code :
Code :
|
||||||||
|
|
00
|
|
|
#8 | |||||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Citation:
Merci beaucoup, ça fonctionne à merveilles ! ![]() Voici le code adapté : Code :
J'aurai ainsi beaucoup appris aujourd'hui
|
|||||
|
|
00
|
|
|
#9 | |||||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Citation:
Merci pour ton aide. Cependant, je ne vois pas comment corréler les conditions de victoire. Par exemple, comment rattacher la condition suivante à "victoire" ? Code :
Merci par avance. |
|||||
|
|
00
|
|
|
#10 | |||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Citation:
L'exécution de cette belle requête me donne : Je regarde afin d'essayer de trouver ce qui ne va pas. Cependant, mon niveau en SQL est plutôt basique... Je n'ai jamais utilisé INNER JOIN, je vais donc éplucher la documentation de (My)SQL. Merci pour ton aide, je reste certain qu'il y a un simple "truc" à corriger pour que cela fonctionne. |
|||
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() Responsable de service informatique Inscription : janvier 2009 Messages : 1 092 ![]() |
En fait Yanika_bzh a donné la réponse complète... Je pensais qu'on pouvait la faire sans sous-requête, mais à priori non.
Tatayo. |
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Sylvain DevidalChef de projets Générix Inscription : février 2010 Messages : 1 062 ![]() |
Et ma requête tu t'en fous ?
|
|
|
00
|
|
|
#13 | |||||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Citation:
merci pour ta réponse. Comme je le disais plus haut, je suis débutant en SQL et n'ai jamais manipulé INNER JOIN pour faire de telles requêtes. J'ai essayé ta requête, SQL me signale une erreur de syntaxe : Code :
|
|||||
|
|
00
|
|
|
#14 | |||||
|
Membre Expert
![]() Sylvain DevidalChef de projets Générix Inscription : février 2010 Messages : 1 062 ![]() |
Citation:
=> du coup le case n'est pas terminé et ça plante. Code :
|
|||||
|
|
00
|
|
|
#15 |
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
Il est possible de faire sans sous requete, mais il faudrait doubler les conditions (case when) dans le SELECT afin de les utiliser pour le calcul global des points. J'ai trouvé plus lisible de passer par une sous requete, qui ne devrait pas penaliser les performances de l'appli.
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
|
|
00
|
|
|
#16 | |||||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Citation:
En tout cas, merci pour ton intervention. Bien, encore une petite erreur de syntaxe, sachant que je crois avoir repéré deux petites fautes : Code :
Code :
|
|||||
|
|
00
|
|
|
#17 |
|
Membre Expert
![]() Sylvain DevidalChef de projets Générix Inscription : février 2010 Messages : 1 062 ![]() |
hmpf :o
vire le "resultat_equipe" l'alias "re" suffit, pas la peine de l'aliser deux fois. désolé je suis pas bien réveillé ça fait peur... |
|
|
00
|
|
|
#18 | |||||
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Citation:
![]() Pour s'en convaincre, voici la réponse (OID = 15) : Code :
Je me suis permis d'ajouter une petite condition afin de ne prendre en compte que les matches joués, c'est-à-dire : Code :
Merci encore ! |
|||||
|
|
00
|
|
|
#19 | ||
|
Membre éclairé
![]() |
Tu peux même généraliser ta requête en faisant :
Code :
|
||
|
|
00
|
|
|
#20 |
|
Nouveau Membre du Club
![]() Développeur Java Inscription : mars 2007 Messages : 111 ![]() |
Merveilleux !Merci pour cette requête généralisée, c'est parfait. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com