Мне нужно создать собственный SQL-запрос с несколькими объединениями и подзапросами. Это будет выглядеть примерно так:
SELECT res.id, COUNT(*) as count_ids
FROM (
SELECT a.id FROM ... a WHERE ... LIKE ('%:param%')
UNION ALL
SELECT b.id FROM ... b WHERE ... LIKE ('%:param%')
UNION ALL
...
) res
GROUP BY res.id
ORDER BY count_ids asc
Результат не будет соответствовать объекту, который я использую в своем приложении. Можно ли создать ResultSetMapping
с "анонимным" объектом? Или, по крайней мере, возможно создать объект, который не будет создавать таблицу в следующий раз, когда я обновляю схему, чтобы я мог сопоставить результаты с ней?
Или есть ли какой-либо другой способ, подходящий для Doctrine, справиться с таким запросом? Однако внесение изменений в базу данных невозможно, поскольку я имею дело с устаревшими материалами, которые нельзя коснуться. Я также сильно предпочел бы, если бы я сделал все на стороне базы данных, не привлекая к ней большую часть PHP.