Идея, лежащая в основе предпочтения выполнения работы в запросах, заключается в том, что ядро базы данных может оптимизировать его путем переформулирования. Вот почему вы хотите запустить EXPLAIN в своем запросе, чтобы увидеть, что на самом деле делает БД . (например, использование индексов, размеров таблиц и иногда даже знаний о распределении значений в столбцах.)
Тем не менее, чтобы получить хорошую производительность в вашем конкретном случае, вам, возможно, придется согнуть или нарушить правила.
О, еще одной причиной могут быть ограничения: увеличение уникального столбца на один может быть приемлемо, если ограничения проверяются после всех обновлений, но генерирует коллизию, если выполняется по одному.