簡體   English   中英

Symfony / Doctrine QueryBuilder加入不過濾掉行

[英]Symfony/Doctrine QueryBuilder Join WITH not filtering out rows

我正在構建一個具有歌曲和評級的應用程序。 我需要為當前登錄用戶選擇所有帶有其關聯的樂曲的歌曲。 我嘗試這樣做,但是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();
    }
}

嘗試使用addSelect

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM