1
我尋求答案,但在我的特殊情況下,任何東西。 我需要加入contintionnally表學說2,依賴於一個領域我必須參加兩個不同的外鍵,在這裏我的代碼的價值:Doctrine2的條件連接表
$qb = $this->entityManager->createQueryBuilder();
$qb ->select('s')
->from('AppBundle:MyTable', 's')
->join('s.firstJoin', 'o')
->join('s.secondJoin', 'd')
->join('AppBundle:joinedView', 'view', Join::WITH,
"(CASE WHEN (d.secondJoinFK = 3)
THEN view.did = d.secondJoinFK
WHEN (d.secondJoinFK = 2)
THEN view.dvid = d.secondJoinFK END)")
->addSelect('d')
->where('s.endDate IS NULL');
然而,這一請求,Symfony的告訴我:[Syntax Error] line 0, col 203: Error: Expected Doctrine\ORM\Query\Lexer::T_ELSE, got '='
此外,我不能使用本機查詢,因爲我使用PagerFanta來呈現模板,而PagerFanta需要在輸入上有ORM \ Query,而不是ORM \ NativeQuery或其他。
不幸的是,我沒有選擇,必須用這些先決條件來實現這個請求。
通過預先感謝您的幫助,