1

我有一个连接多个表的查询,

$qb = $dbm->createQueryBuilder();

$qb->select('job', 'tasks')
   ->from('MyJobBundle:Job', 'job')
   ->innerJoin('job.tasks', 'job_tasks');

这按预期工作,我为每项工作都有一系列任务。我只想计算任务的数量而不是返回它们。就像是,

$qb = $dbm->createQueryBuilder();

$qb->select('job', 'count(job.tasks) as num_tasks')
   ->from('MyJobBundle:Job', 'job')
   ->innerJoin('job.tasks', 'job_tasks');

我怎样才能做到这一点?

4

1 回答 1

0

尝试这个 :

$qb->select('count(job_tasks) as num_tasks')
   ->from('MyJobBundle:Job', 'job')
   ->innerJoin('job.tasks', 'job_tasks')
   ->groupBy('job')
   ->getQuery()
   ->getResult();

那应该返回每个job值的计数

于 2013-06-11T07:20:38.163 回答