在当前用户和DQL查询中的其他用户之间添加共同选择的COUNT个事件

问题描述

我在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错误:冒号«u0_.username»do装置名称dan子句GROUP BY ou doitêtreutilisédans une fon d'agrégat 第1行:选择u0_.username AS用户名_0,u0_.username_canonical AS ..

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)