Bonjour,
Je me trouve confronté à un problème avec MySQL 5.0.51b-community-ntqui qui apparemment a été abordé plusieurs fois, mais je n'ai pas trouvé de réponse satisfaisante.
Voici mon problème :
Imaginons deux tables :
EMPLOYES SALAIRES
---------- --------
ID_EMPLOYE ID_SALAIRE
NOM ID_EMPLOYE
SALAIRE
dans la table employé on trouve :
1 DUPONT
2 DURAND
et dans la table salaires :
1 2 1500
maintenant j'execute la requete suivante :
Code :
- SELECT
- e.nom, s.salaire AS 'salaire en euros'
- FROM
- employes e
- LEFT OUTER JOIN salaires s
- ON s.id_employe = e.id_employe
- GROUP BY e.id_employe
- HAVING 'salaire en euros' > 100
|
La requête va me sortir aucun résultat. Si par contre je met entre quote '100' à ce moment là ca me sort tous les résultats.
Je suis obligé de passer par un GROUP BY, d'après le manuel de MySQL 5, il est impossible de faire un WHERE sur un alias, il faut à la place utiliser HAVING.
Je suis bien embêté car je fais un système un peu dynamique en PHP, et j'ai besoin de mettre un alias aux colonnes, et je suis surtout obligé d'utiliser le nom de colonne renvoyé par MySQL et le réutiliser dans le HAVING.
Si quelqu'un a une slution ultime, je suis preneur.
Merci