2016-06-09 2 views
1

Zend에 대한 게시물에서 답변의 시작을 보았습니다. Join subquery with doctrine 2 DBAL 불행히도 나는 그것을 관리 할 수 ​​없습니다. 심포니는 젠드와 가능하면doctrine과 symfony 2와 하위 쿼리 조인

Error: Expected end of string, got 'SELECT' 

, 왜 :

$qbaudio = $em->createQueryBuilder(); 
    $subSelect = $qbaudio->select ('a.id_support id_support','sum(a.duration) dureeTotale','count(a) nbAudio') 
     ->from('MyBundle:AudioObject','a') 
     ->groupBy('a.id_support') 
     ->where('a.type = :audio_type') 
     ->getQuery(); 
    $qb = $em->createQueryBuilder(); 
    $qb->select('sp.ref1','sp.title1','count(i) nbImage','sp.nbSupportSaisi','sum(a.duration) dureeTotale','count(a) nbAudio','a.sampling') 
     ->from('MyBundle:Storage', 'st') 
      ->leftJoin('p.sides','si') 
      ->leftJoin('si.support','sp') 
      ->leftJoin('sp.images','i') 
      ->leftJoin('sp.audioObjects', sprintf('(%s)',$subSelect->getDQL()), 'a', 'ON sp.id = a.id_support') 
      ->groupBy('sp.id') 
      ->setParameter('audio_type', 'MP3') 

불행하게도 나는이 메시지를 받았습니다 : 나는 그런 aimfeld soltuion를 시도? 아이디어가 있으십니까? 감사

+0

봐. getSQL과 getDQL의 차이점을 발견 할 수 있습니까? – Cerad

답변

0

대신 DQL의 사용 SQL : 밀접

$subSelect->getSQL()