2012-07-13 3 views

답변

5

이전과 쿼리 후 시간을 절약하고이 같은 의 차이, 뭔가 계산 :

DECLARE @start_time DATETIME, @end_time DATETIME 
SET @start_time = CURRENT_TIMESTAMP 

-- query goes here 

SET @end_time = CURRENT_TIMESTAMP 
SELECT DATEDIFF(ms, @start_time, @end_time) 
4

"SET STATISTICS TIME ON;"을 실행 해보십시오. 귀하의 거래를 실행하기 전에 귀하의 연결에.

+0

감사합니다. 하지만이 시간을 프로그래밍 방식으로 가져 와서 테이블에 저장하고 싶습니다. – Mehran

+4

@Mehran - 질문에 해당 요구 사항을 추가하십시오. – Lamak

+0

SqlConnection의 InfoMessage 이벤트를 통해 메시지를 받게됩니다. – JohnC

2

JohnC이 옳다하고 당신이 원하는 아마입니다.

그러나 정확한 요구에 따라 다른 옵션이 있습니다. SSMS는 쿼리를 실행할 때 오른쪽 하단 코너에서 경과 한 시간 (최소 2 초)을 알려줍니다.

물론 getdate()을 사용하면 실행 직전과 실행 직후에 SQL Server에서 시간을 가져와 차이점을 찾을 수 있습니다.

많은 수의 쿼리를 반복적으로 테스트하려면 timeit과 같은 라이브러리가있는 python과 같은 다른 언어로 테스트 하네스를 구축 할 수 있습니다.

관련 문제