【发布时间】:2021-01-04 10:56:51
【问题描述】:
我在 Symfony 4 项目中有这个 DQL 查询,它确实选择了与当前用户在所有相同事件中注册的所有用户
$query = $this->_em->createQuery(
"select u as user, er.dateRegistration from App:EventRegistration er
left join App:User u with er.user = u.id
where er.user != :user_id and
er.event in (select identity(er2.event) from App:EventRegistration er2
where er2.user = :user_id)")
->setParameter('user_id', $user->getId());
return $query->getResult();
现在,在同一个查询中,我想选择 COUNT 每个其他用户在当前用户的同一事件中注册了多少次。
我的意思是当前用户和其他用户之间共同的事件数。
如果我将 count(er.id) 添加到选择中
select u as user, er.dateRegistration, count(er.id)
我收到此错误:
SQLSTATE[42803]: 分组错误: 7 ERREUR: la colne « u0_.username » doit apparaître dans la Clause GROUP BY ou doit être utilisé dans une fonction d'agrégat 第 1 行:选择 u0_.username AS username_0, u0_.username_canonical AS..
【问题讨论】:
标签: postgresql doctrine symfony4 dql