Simplifier une requête
Résolu
Bonjour,
J'aimerais simplifier la requête suivante :
La commande suivante fonctionne mais comme vous pouvez le voir elle est "lourde". Je répète 3 fois :
La première fois je le met dans un alias ce qui permet de rendre "meilleurs" l'affichage mais es possible d'utilisé une méthode pour "enlever" les 2 autres commandes ?
Merci d'avance pour toutes réponse.
Cordialement.
J'aimerais simplifier la requête suivante :
select prenomnomj, (max(months_between(to_date(anneefin,'YYYY'),to_date(anneedebut, 'YYYY')))/12) as annee from joueur group by prenomnomj having max(months_between(to_date(anneefin,'YYYY'),to_date(anneedebut, 'YYYY'))) >= all ( select max(months_between(to_date(anneefin,'YYYY'),to_date(anneedebut, 'YYYY'))) from joueur );
La commande suivante fonctionne mais comme vous pouvez le voir elle est "lourde". Je répète 3 fois :
(max(months_between(to_date(anneefin,'YYYY'),to_date(anneedebut, 'YYYY')))/12)
La première fois je le met dans un alias ce qui permet de rendre "meilleurs" l'affichage mais es possible d'utilisé une méthode pour "enlever" les 2 autres commandes ?
Merci d'avance pour toutes réponse.
Cordialement.
1 réponse
-
Contributeur Ambassadeurbonjour, utilises-tu réellement le logiciel MySQL?
Quel est le type des champs anneefin et annedebut?
Moi je ferais ainsi:select j.prenomnomj, jmax.maxannee as annee from joueur as j, (select max(anneefin-anneedebut) as maxannee from joueur) as jmax where jmax.maxannee = j.anneefin-j.anneedebut;
-
-
Contributeur Ambassadeur@Hamster18Quel est le type des champs anneefin et annedebut?
As-tu essayé ma suggestion? -
-