2017-12-05 48 views
0

私は合計を選択しようとしているとは合計を選択し、エンティティ

$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'); 

はエラー私が手にフル参加エンティティ参加querybuilder:「SELECT合計そば[意味論的エラー]行0、列を-1 (trl.billable_amount) ':エラー:少なくとも1つのルートエンティティエイリアスを選択せず​​にI​​D変数を通じてエンティティを選択することはできません。

"rはリソースとして"なくても正常に動作します。このように参加することは可能ですか、またはリソースIDだけを取得して、2番目のクエリでエンティティを取得する必要がありますか?あまりに

+0

試し 'てみてください - >選択(TRL」を、R、.....)' –

答えて

0

選択ルートエンティティの別名、この

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

は今、私は「持つエンティティ結果の親オブジェクトを取得しますエイリアス 'r'が見つかりませんでした。親エイリアスは 'c'です。 –

関連する問題