Page 1 sur 1

MySQL ... SQL standard ?

Posté : 31 mai 2005, 23:13
par Invité
Bonjour à tous,

Je ne comprends pas j'ai une requête SQL qui fonctionne sous MS-ACCESS mais qui refuse de fonctionner sous MySQL, voici le code

Code : Tout sélectionner

SELECT Count( T_VISITOR.T_VISIT_PAGE ) AS TOTAL, T_VISITOR.T_VISIT_PAGE AS PAGE FROM T_VISITOR GROUP BY T_VISITOR.T_VISIT_PAGE ORDER BY Count( T_VISITOR.T_VISIT_PAGE ) DESC , T_VISITOR.T_VISIT_PAGE;
Cela fonctionne sous MS-ACCESS mais sous MySQL j'ai le message suivant :
#1111 - Invalid use of group function
Je ne vois pas où est l'erreur, ou s'agit-il d'une limitation se MySQL ?

Merci d'avance.

Posté : 31 mai 2005, 23:28
par Cyrano
Probablement parce que tu fais un GROUP BY sur le nom du champ au lieu d'utiliser l'alias: et en outre on peut simplifier : comme la recherche n'a lieu que sur une seule table, il est inutile de préfixer les champs, donc :

Code : Tout sélectionner

SELECT Count( T_VISIT_PAGE ) AS TOTAL, T_VISIT_PAGE AS PAGE FROM T_VISITOR GROUP BY PAGE ORDER BY Count( T_VISIT_PAGE ) DESC , T_VISIT_PAGE;
Ça devrait fonctionner.

Posté : 01 juin 2005, 00:44
par Invité
Merci c'était bien cela, tout fonctionne maintenant. :D

Merci de mettre un "Résolu"

Super rapide et sympa, bonne continuation =D>