Принимая во внимание следующий собственный запрос SQL, содержащий соединение с подвыбором, есть ли способ преобразовать его в запрос JPQL (или, альтернативно, возможно ли отобразить это с помощью @SqlResultSetMapping
так, чтобы у меня не было выполнить тысячи последующих запросов для заполнения моих объектов (скажем, в этом случае Foo
содержит ссылку на один Bar
и список Baz
сущностей):
SELECT
foo.*, bar.*, baz.*
FROM
foo
INNER JOIN
bar ON foo.bar_id = bar.id
INNER JOIN
baz ON bar.baz_id = baz.id
INNER JOIN
(SELECT
bar_id, MAX(some_int) ct
FROM
foo
WHERE
some_int <= 2
GROUP BY bar_id) max_id ON max_id.bar_id = foo.bar_id
WHERE
foo.some_int = max_id.ct;