Cześć - napotkałem problem w doctrine którego nie potrafię rozwiązać.
Chcę przenieść następujące zapytanie na poziom doctrina:
SELECT count(c.id) FROM company c WHERE (SELECT MIN(u.surname) FROM contact u WHERE u.company_id = c.id) LIKE '%a%'
Takie zapytanie w sql-u ładnie działa i zwraca to co trzeba.
Tak wygląda to co stworzyłem po stronie php i doctrina:
$this->getDoctrine()->getManager()
->getRepository('XYZBundle:Company')
->createQueryBuilder('c')
->select('COUNT(c.id)')
->where("(SELECT MIN(u.surname) FROM XYZBundle:Contact u where u.id = c.id) LIKE '%a%'")
->getQuery()
->getResult();
i niestety ale taka konstrukcja zrzuca QueryException: [Syntax Error] line 0, col 136: Error: Expected =, <, <=, <>, >, >=, !=, got 'LIKE' '
jeśli zamienię LIKE na = to wszystko działa mnie jednak interesuje LIKE - czy ktoś wie co jest nie tak z taką konstrukcją w DQL ?