Если логика агрегирования простая и умещается в один запрос безо всяких курсоров, то лучше сделать sql скриптом SQL в рамках одной транзакции.
Если сложнее и придется использовать курсор, но не больше одного, то так же в sql скрипт. (возможно обложится индексами)
Во всех остальных случаях вынести в приложение с широкими выборками.