2012-03-19 3 views
0

SQL Server Management Studio를 사용하고 있으며 select 문을 사용하여 쿼리를 실행하고 있습니다. 나는 '텍스트로 결과'대신 '그리드 결과'에 쿼리를 실행하면 나는 select getdate()SSMS 결과 형식 간의 성능 차이

이 쿼리의 시작과 끝에

내가 번이 사이에서 매우 다른 시간을 얻을 수 (I ' 캐싱으로 인한 혼란을 없애기 위해 여러 번 실행).

이러한 결과는 쿼리 실행에 걸리는 시간에 결과 결과가 왜 영향을 미치는지를 고려할 때 Management Studio와 달리 SQL 서버 자체에서 분명히 생성됩니다 (쿼리의 일부이기 때문에).

답변

1

이 경우 여러 부분으로 쿼리, 예를 들면 :

--Get the start time 
SELECT getdate(); 

SELECT * FROM foo; 

--Get the end time 
SELECT getdate(); 

내 가정 (또는 그 이상 차이가 SSMS 쿼리의 다음 부분을 실행하기 전에 각 부분의 결과를 렌더링 있다는 것을 것 SQL Server가 마지막 문을 평가하도록하기 전에 결과 집합으로 이동하기 전에 가능성이 있습니다. 그리드로 렌더링하는 것은 일반 텍스트를 작성하는 것보다 시간이 많이 걸리므로 시간이 다를 수 있습니다.

클라이언트 렌더링 모드가 첫 번째 GetDate()와 마지막 GetDate() 사이의 시간에 실제로 영향을주는 경우 실제로 설명하는 유일한 방법입니다.

진정한 서버 측 단일 명령문 타이밍을 원한다면 SQL Server 프로파일 러를 사용하여 쿼리 실행 시간을 측정 할 수 있습니다.

+0

고마워요. 그게 결론에 도달했습니다 ... 이상하게! – Liath