2016-05-30 43 views
0

我有以下SQL查询运行良好,Symfony的学说GROUP BY查询

SELECT completed_by, count(*) AS Total 
FROM tasks 
WHERE completed_by is not null AND status = 1 
GROUP BY completed_by 
; 

EM正与学说查询生成器做这件事,但没有工作返回一个错误。

$parameters = array(
        'status' => 1, 
       ); 

$qb = $repository->createQueryBuilder('log'); 
$query = $qb 
->select(' log.completedBy, COUNT(log) AS Total') 
->where('log.Status = :status') 
->groupBy('log.completedBy') 
->setParameters($parameters) 
->getQuery(); 

并得到低于错误;

[Semantical Error] line 0, col 21 near 'completedBy,': Error: Invalid PathExpression. Must be a StateFieldPathExpression.

回答

0

这是错误的:COUNT(log) AS Total。它应该是像COUNT(log.log) AS Total

+0

仍然是一样的错误, –

+0

你的“日志”表中是否有列“log”?如果没有,那么你应该'count(log.id)'或类似的东西。 – michaJlS

+0

是它是id列,我替换它,但仍然在' - > groupBy('log.completedBy') –