xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 2012
-
29 mai 2009 à 15:18
xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 2012
-
31 mai 2009 à 09:13
Bonjour à tous une petite question requête :)
Peut ont utiliser la valeur d'une fonction dans un SELECT, dans une clause WHERE d'une requête :
l'exemple concret plus parlant :
SELECT id_client,id_contrat, MAX(date) as date1, id_suivi_client FROM `suivi_client` WHERE ne_pas_suivre !=1 AND belgique=1 AND date1<=(SELECT MAX(date) as date2 FROM `suivi_client` WHERE ne_pas_suivre !=1 AND belgique=1 AND date<='2009-03-30' GROUP BY id_contrat) GROUP BY id_contrat
qui me retourne : #1054 - Unknown column 'date1' in 'where clause'
cs_jeca
Messages postés341Date d'inscriptionmercredi 17 juillet 2002StatutMembreDernière intervention14 juillet 201114 30 mai 2009 à 08:50
Bonjour,
Extrait du manuel de référence mysql :
"Notez que ANSI SQL ne vous permet pas de vous référer à un alias dans une clause WHERE. Il en est ainsi car lorsque le code de WHERE est exécuté, la valeur de la colonne ne peut pas encore être déterminée. Par exemple, la requête suivante est illégale :
SELECT id,COUNT(*) AS cnt FROM nom_de_table WHERE cnt > 0 GROUP BY id;"
xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 20122 29 mai 2009 à 16:58
Bonjour et merci pour ta réponse, je tien juste a dire que si j'avais voulu une traduction de ce que me sortais PMA, j'aurai était sur un site de traduction.
Et sinon MAX(date) as date1
donc date1 est bien déclaré...