Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zmierz czas potrzebny na wykonanie zapytania t-sql

Jeśli chcesz dokładniejszego pomiaru niż powyższa odpowiedź:

set statistics time on 

-- Query 1 goes here

-- Query 2 goes here

set statistics time off

Wyniki będą widoczne w Wiadomościach okno.

Aktualizacja (29.07.2015):

Na popularne żądanie napisałem fragment kodu, którego można użyć do określania czasu wykonywania całej procedury składowanej, a nie jej składników. Chociaż zwraca to tylko czas zajęty przez ostatnie uruchomienie, istnieją dodatkowe statystyki zwracane przez sys.dm_exec_procedure_stats które również mogą mieć wartość:

-- Use the last_elapsed_time from sys.dm_exec_procedure_stats
-- to time an entire stored procedure.

-- Set the following variables to the name of the stored proc
-- for which which you would like run duration info
DECLARE @DbName NVARCHAR(128);
DECLARE @SchemaName SYSNAME;
DECLARE @ProcName SYSNAME=N'TestProc';

SELECT CONVERT(TIME(3),DATEADD(ms,ROUND(last_elapsed_time/1000.0,0),0)) 
       AS LastExecutionTime
FROM sys.dm_exec_procedure_stats
WHERE OBJECT_NAME(object_id,database_id)[email protected] AND
      (OBJECT_SCHEMA_NAME(object_id,database_id)[email protected] OR @SchemaName IS NULL) AND
      (DB_NAME(database_id)[email protected] OR @DbName IS NULL)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przechowywanie i analiza dokumentów w systemie plików Windows za pomocą wyszukiwania semantycznego SQL Server — część 2

  2. Profiler serwera SQL nie wyświetla zapytań LINQ To Sql

  3. Brak wsparcia dla OVER w MS SQL Server 2005?

  4. Serwer SQL ignoruje wielkość liter w wyrażeniu gdzie

  5. CONVERT() vs TRY_CONVERT w SQL Server:jaka jest różnica?