PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 01/06/2012 09:39:07

zero.h
Membre

la colonne « jugebean0_.id » doit apparaître dans la clause GROUP BY

Bonjour,
j'ai la requête HQL

FROM JugeBean j GROUP BY j.nomComplet

qui marche parfaitement sur MySQL mais lorsque je l’exécute sur postgres j'ai le message d'erreur suivant

eptionReporter:72 - ERREUR: la colonne « jugebean0_.id » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d'agrégat

merci d'avance

Hors ligne

#2 01/06/2012 09:46:02

gleu
Administrateur

Re : la colonne « jugebean0_.id » doit apparaître dans la clause GROUP BY

Quelle est la requête SQL exacte ? ça doit être affiché avec le message d'erreur. Ce qui est certain, c'est que toutes les colonnes de la partie SELECT qui ne sont pas dans des fonctions d'agrégation doivent être dans la clause GROUP BY.

Par exemple "SELECT id, c2, count(*) FROM t GROUP BY id" ne fonctionnera pas sur PostgreSQL, même si id est une clé primaire (alors que ça fonctionne sous MySQL il me semble). Sous PostgreSQL, il faut l'écrire ainsi : SELECT id, c2, count(*) FROM t GROUP BY id, c2


Guillaume.

Hors ligne

Pied de page des forums