[Doctrine] Select d'un seul champ
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 :
Code:
1 2 3 4 5 6
| $rq = Doctrine_Query::create()
->select('COUNT('.$ChampCount.') AS nb, '.$ChampStats)
->from($TableStats)
->groupBy($ChampStats);
$Statistiques = $rq->fetchArray(); |
Quand j'affiche la requête DQL, tout va encore très bien :
Code:
1 2 3 4
|
SELECT COUNT(individu_id) AS nb, connaissance_id
FROM maitrise_connaissances
GROUP BY connaissance_id |
Seulement au moment de générer le SQL il fait n'importe quoi et me met le message d'erreur suivant :
Code:
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" |
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...
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.