Bonjour, je souhaiterais ne mettre qu'un seul champ dans le select avec Doctrine mais ça ne fonctionne pas...
Voici mon code php pourtant si clair :
Quand j'affiche la requête DQL, tout va encore très bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $rq = Doctrine_Query::create() ->select('COUNT('.$ChampCount.') AS nb, '.$ChampStats) ->from($TableStats) ->groupBy($ChampStats); $Statistiques = $rq->fetchArray();
Seulement au moment de générer le SQL il fait n'importe quoi et me met le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT COUNT(individu_id) AS nb, connaissance_id FROM maitrise_connaissances GROUP BY connaissance_id
Il ne me mets pas qu'un seul champ... J'ai essayé de mettre un alias à la table et mettre clairement alis.nomchamp mais rien à faire il me fait la même chose... J'avais rencontré ce bug depuis un moment mais je m'étais dit tant pis. Mais cette fois ma requête est impossible sans ça...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SQLSTATE[42803]: Grouping error: 7 ERREUR: la colonne « m.individu_id » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d'agrégat LINE 1: SELECT m.individu_id AS m__individu_id, m.connaissance_id AS... ^. Failing Query: "SELECT m.individu_id AS m__individu_id, m.connaissance_id AS m__connaissance_id, COUNT(m.individu_id) AS m__0 FROM maitrise_connaissances m GROUP BY m.connaissance_id"
Je l'utilise avec postgresql mais je doute que le problème vienne de la.
Quelqu'un aurait une idée ?
Merci d'avance.
Cordialement.
Partager