Выполнение всей работы в базе данных всегда должно быть быстрее. Каждый раз, когда вы подключаетесь к базе данных, у вас возникают некоторые накладные расходы. Эти издержки могут быть относительно незначительными, если план запроса кэшируется и кэш оптимизируется, но данные по-прежнему необходимо перемещать назад и вперед.
Что еще более важно, движки баз данных оптимизированы для выполнения запросов. Некоторые базы данных оптимизируют выражения in
, используя двоичный поиск. Параллельные базы данных могут также использовать несколько процессоров для запроса. Производительность ухудшается только в том случае, если from
является представлением или если ваш запрос более сложный.
При некоторых условиях разница в производительности может быть незначительной, например, для локальной базы данных, где таблица кэшируется в памяти. Однако ваша привычка должна заключаться в том, чтобы выполнять такую работу в базе данных, а не в приложении.