QueryBuilder选择总和并加入实体



我正在尝试选择和完整加入实体

$qb = $this->createQueryBuilder('trl')
        ->select('sum(trl.billable_amount) as billable_amount,
          sum(trl.billable_duration) as billable_duration, 
          r as resource')
        ->join('trl.time_report', 'tr')
        ->join('trl.contact', 'c')
        ->leftJoin('c.resource', 'r')
        ->where('tr.id = :id')
        ->setParameter('id', $timeReportId)
        ->groupBy('r.id')
        ->having('billable_amount > 0');

错误i获取:[语义错误]第0行,col -1接近'select sum(trl.billable_amount)':错误:无法通过识别变量选择实体,而无需选择至少一个根实体别名。

它可以正常工作,没有" R作为资源"。是否可以这样加入,或者我应该仅获得资源ID并获得第二个查询的实体?

也选择根实体别名,尝试以下

$qb = $this->createQueryBuilder('trl')
    ->select('trl, sum(trl.billable_amount) as billable_amount,
      sum(trl.billable_duration) as billable_duration, 
      r as resource')

最新更新