Сценарий:Является ли запрос более медленным, чем выполнение SQL напрямую?
У меня есть 3 таблицы, которые необходимо объединить, предложение where, чтобы ограничить набор результатов, и только несколько столбцов из каждой выбранной таблицы. Просто. Тем не менее, запрос сделать это не очень красиво, и при использовании ORM между базой данных и приложением, это похоже на попытку поставить квадратную привязку в круглое отверстие.
Мой способ обойти это, чтобы создать представление, которое охватывает запрос, и теперь моя модель приложения отображает непосредственно представление в базе данных; не более сумасшедшее отображение слоя ORM.
Вопрос: Предполагая, что здесь нет других факторов, будет ли запрос против представления подвергать любые дополнительные штрафы за производительность, которые я бы не ударил, если бы я выполнил инструкцию SQL напрямую? - Это не индексированный вид, предполагающий то же самое, что и предложение, сохраняйте это просто.
Меня убеждают в том, что вид страдает от дополнительных накладных расходов на «создание». Мое понимание состоит в том, что при всем остальном одно и то же, два должны иметь идентичную производительность.
Просьба уточнить. Благодаря!
Зависит от базы данных и многих других вещей. Если это MySQL, ответ: Да, это медленнее. – nos