2014-02-28 83 views
0

我正在建立一個應用程序,我有歌曲和評級。我需要選擇當前登錄用戶的所有歌曲及其關聯評分。我嘗試這樣做,但WITH子句不起作用。它不斷提取每首歌的所有評分。Symfony/Doctrine QueryBuilder加入WITH沒有過濾出行

class SongRepository extends EntityRepository 
{ 
    public function getAllSongsWithRatings($section, $user) 
    { 
     $qb = $this->getEntityManager()->createQueryBuilder() 
      ->select('s') 
      ->from('RateBundle:Song','s') 
      ->leftJoin('s.ratings','r','WITH','r.user = :user') 
      ->setParameter('user', $user); 
     return $qb->getQuery()->getResult(); 
    } 
} 

回答

3

嘗試用addSelect

$qb = $this->getEntityManager()->createQueryBuilder() 
     ->select('s') 
     ->from('RateBundle:Song','s') 
     ->leftJoin('s.ratings','r','WITH','r.user = :user') 
     ->addSelect('r') 
     ->setParameter('user', $user); 
+1

這就是它!完美,非常感謝......正在尋找幾個小時! –