Добрый день!
У меня есть SQL запрос, который джойнит 2 таблицы и работает должным образом:
SELECT ref_model_id,
COUNT(*) AS total_assets,
COUNT(*) FILTER (WHERE ref_asset_id IS NOT NULL) AS reserved_asset,
COUNT(*) - COUNT(*) FILTER (WHERE ref_asset_id IS NOT NULL)
FROM am_asset aa
LEFT JOIN am_asset_reservation aar ON aar.ref_asset_id = aa.id AND is_active = TRUE
WHERE status = 'на_складе'
GROUP BY ref_model_id
Я попытался его привести к JPQL, но не работает. Выбрасывается ошибка синтаксиса, но не могу понять где именно неправильно написал:
<![CDATA[select e.refModel, count(*), count(*) filter (where a.refAsset is not null),
count(*) - count(*) filter (where a.refAsset is not null)
from am_Asset e
left join am_AssetReservation a on a = e.refModel and a.isActive = TRUE
WHERE e.status = 'на_складе'
GROUP BY e.refModel]]>
Что пишу не так?