похоже, что запрос выполняется мгновенно
Возможно, план запроса позволяет быстро возвращать строки.
Например, если вы сделаете SELECT * FROM a_large_table
, вы сразу увидите несколько строк, но получение всего набора результатов займет некоторое время. Какое фактическое время выполнения сообщает Mgmt Studio (отображается в строке состояния после завершения запроса)?
Если вы хотите проверить производительность запроса без извлечения данных клиенту, вы можете сделать SELECT INTO #temp_table
. Это потребует некоторого дополнительного ввода / вывода, но все равно даст вам довольно хорошую оценку времени выполнения.
UPD.
Вы также можете запустить что-то вроде SELECT COUNT(*) FROM (<your query here>)
или SELECT SUM(<some field>) FROM (<your query here>)
- если повезет, сервер выполнит запрос и агрегирует результат, в основном выполняя ту же работу плюс немного больше. Но это очень легко исказить результаты - оптимизатор запросов умный, и вы должны быть очень осторожны, чтобы убедиться, что вы измеряете то, что вы хотите измерить (потому что измерение запроса с другим планом выполнения не имеет никакого смысла вообще ).
Я предлагаю вам еще раз подумать, что вы хотите измерить и почему. В любом реальном сценарии вас не интересует «чистая» длительность запроса - потому что вы никогда не хотите отбрасывать результат запроса (результат - зачем вам этот запрос в первую очередь, верно?). Поэтому вам нужно либо вернуть результат клиенту, либо сохранить его где-нибудь, либо объединить его с другой таблицей и т. Д., И обычно вы хотите измерить выполнение запроса, включая время, использованное для обработки его результата.
Одно последнее уведомление. Если вы надеетесь, что сможете каким-то образом заставить сервер выполнить этот запрос за 1 секунду, потому что вы думаете, что сервер ничего не делает в течение других 13 секунд, вы ошибаетесь. Как говорится, SELECT не сломан.
Что может помочь, так это оптимизация запросов - и для одного запроса профилировщик вам мало поможет. Проанализируйте план запроса, настройте структуру таблицы, попробуйте переписать запрос, если возникнут проблемы, опубликуйте еще один вопрос на SO.