w klasie Repository zrobiłem sobie natywne zapytanie sql wykorzystujące podzapytania w klauzuli FROM :
namespace My\TyperkaBundle\Repository; use Doctrine\ORM\EntityRepository; class TypeRepository extends EntityRepository { public function getSumPointsOnMatchday(){ $qb = $this->getEntityManager()->createQuery( 'SELECT a.suma, a.user_id, a.matchday_id, b.suma_pkt, a.priority FROM ( SELECT SUM(t.numberOfPoints) AS suma, u.id AS user_id, u.priority, md.id as matchday_id FROM MyTyperkaBundle:Type t JOIN CommonUserBundle:User u JOIN MyTyperkaBundle:Match m JOIN MyTyperkaBundle:Matchday md WHERE md.id BETWEEN 1 AND 15 GROUP BY u.username, md.id ) a , ( SELECT SUM(t.numberOfPoints) AS suma_pkt, u.id AS user_id, u.priority FROM MyTyperkaBundle:Type t JOIN CommonUserBundle:User u JOIN MyTyperkaBundle:Match m JOIN MyTyperkaBundle:Matchday md WHERE md.id BETWEEN 1 AND 15 GROUP BY u.username ) b WHERE a.user_id = b.user_id ORDER BY 4 desc,5,3' ); $result = $qb->getResult(); return $result; }
Niestety otrzymuję następujący błąd:
[Semantical Error] line 0, col 99 near '( ': Error: Class '(' is not defined.
Czy to wynika z tego, że w Doctrine jest jakiś problem z tego typu zapytaniami ?
W ogóle o co chodzi w tym błędzie ?