возможно и не было проблемы. делать логику в БД - вполне норм. особенно когда у нас терабайтные базы. лучше БД подготовит результат обработки 1 млрд. записей - посчитает сумму к примеру, каких то заказов. и отдаст в java конечный результат. обратный вариант - выбирать все записи из БД, и считать на жаве - памяти можно не напастись.
Ну так это и норм, у нас в памятке о написании программ стоит что если можно реализовать логику на jpql то на нем, после только java.