У меня небольшая проблема ... Я создал запрос на SQL, который отлично работает.Как преобразовать RAW SQL в DQL с запросом на LEFT JOIN
Мне нужна колонка результата запроса, которая говорит мне, существует ли эта строка в другой строке и group_ user_id.
это мой запрос в данный момент:
select u.*,
case when m.usuario_id = u.id
then 1
else 0
end as posicionado
from usuario u
left join (select usuario_id from matriz where matriz = 1) as m
on u.id = m.usuario_id group by u.id
Но когда я пытаюсь преобразовать сделать DQL, это дает проблему на left join (select
.
Вот мой фактический DQL:
SELECT u,
CASE WHEN IDENTITY(m.usuario) = u.id
THEN 1
ELSE 0
END AS posicionado
FROM AppBundle:Usuario u
LEFT JOIN (SELECT IDENTITY (ma.usuario_id) FROM AppBundle:Matriz ma WHERE ma.matriz = 1) as m ON u.id = m.usuario_id group by u.id
Это seens как если доктрина не могу понять, что запрос. Это ошибка:
[Semantical Error] line 0, col 206 near '(SELECT IDENTITY(ma.usuario_id)': Error: Class '(' is not defined.
Может кто-то помочь мне понять, как использовать Querys на РЕГИСТРИРУЙТЕСЬ с доктриной? Мне нужно его использовать с KNPPaginationBundle. И это не работает с сырым SQL.