我在数据库中有6条记录。3来自用户1,2来自用户2,1来自用户3。
我想通过user_id对它们进行计数,因此最终结果将为3。并且它始终返回表中所有记录的计数。返回6。
我的功能:
return $this->getDeviceRepository()
->createQueryBuilder('tlu')
->select('COUNT(tlu.user_id)')
->getQuery()
->getResult();
您有2个解决方案(使用groupBy或countDistinct)
return $this->getDeviceRepository()
->createQueryBuilder('tlu')
->select('COUNT(tlu.user_id)')
->groupBy('tlu.user_id')
->getQuery()
->getResult();
或
return $this->getDeviceRepository()
->createQueryBuilder('tlu')
->select('COUNT(tlu.user_id)')
->countDistinct('tlu.user_id')
->getQuery()
->getResult();