Bonjour,
je suis en train de migrer de SQlite vers PostgreSQL ... et comme vous le savez, ce n'est pas très aisé. J'ai résolu un premier problème de GROUP BY grâce aux fonctions de fenêtrages, mais ce coup ci, aucun rapport ...
Voici la requête qui n'est pas digérée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT activity, seance, MAX(nb_real) AS nb_real_max FROM realisations GROUP BY activity, seance
Bon voilà, je dois absolument récupérer "activity" et "seance", car je vais en avoir besoin pour faire une jointure (la requête que j'ai montrée plus haut n'est qu'une sous-requête dans une clause INNER JOIN.
Comme vous vous en doutez, PostgreSQL me crache une méchante exception à la figure :
Comment je peux faire dans un cas comme ça ?!org.postgresql.util.PSQLException: ERROR: column "realisations.activity" must appear in the GROUP BY clause or be used in an aggregate function
Position*: 2987
Merci beaucoup.
NB
Le moyen serait d'appliquer une fonction d'agrégat sur chaque résultat renvoyé, mais une fonction qui n'aurait aucun effet (un max par exemple). Mais c'est une solution plutôt bancale et lourde, et comme je sais que PostgreSQL n'est pas bancal ...
enfin bref, que feriez-vous à ma place ?
Merci.








Répondre avec citation






Partager