Суммирование полей в SQL-запросе или получение результатов и последующий цикл в коде?

У меня более 100K строк в моей таблице. Я хочу получить сумму данных с условием where по неиндексированному полю (Полученные данные будут составлять 50-100 строк). Что я должен предпочесть? SQL Sum или получить отфильтрованные данные и суммировать их с помощью цикла.

В таблице 'BOOKS' есть 15 числовых столбцов, таких как 'Maths', 'English', 'History' и так далее, в которых хранится количество книг, заказанных клиентом. Я хочу получить данные о том, сколько книг по каждому предмету клиент заказал за год в зависимости от номера карточки клиента (это поле не индексируется).

Вариант 1

query = 'SELECT SUM('subject_1) as qunatity_1, SUM(subject_2) as quantity_2....SUM(subject_15) as quantity_15 from BOOKS where customer_card_no=10'

Должен ли я просто выполнить этот запрос и получить необходимые данные

Вариант 2

query = 'SELECT subject_1, subject_2...subject_15 from BOOKS where customer_card_no=10'

перебираем полученные строки и суммируем поля для получения необходимых данных

Вернуться на верх