sys.dm_exec_query_stats

업데이트: 2006년 12월 12일

캐시된 쿼리 계획에 대한 집계 성능 통계를 반환합니다. 이 뷰에는 캐시된 계획 내의 쿼리 문당 하나의 행이 포함되어 있습니다. 행의 유효 기간은 계획 자체와 연결되어 있습니다. 캐시에서 계획이 제거되면 이 뷰에서도 해당 행이 제거됩니다.

[!참고] 현재 서버에서 실행 중인 작업이 있을 경우 sys.dm_exec_query_stats의 초기 쿼리 결과가 정확하지 않을 수 있습니다. 쿼리를 다시 실행하면 보다 정확한 결과를 확인할 수 있습니다.

열 이름 데이터 형식 설명

sql_handle

varbinary(64)

쿼리가 속하는 일괄 처리 또는 저장 프로시저를 참조하는 토큰입니다.

sql_handlestatement_start_offsetstatement_end_offset과 함께 사용되어 sys.dm_exec_sql_text 동적 관리 함수를 호출하여 쿼리의 SQL 텍스트를 검색할 수 있습니다.

statement_start_offset

int

0부터 시작하여 일괄 처리 또는 지속형 개체의 텍스트 내에서 행이 설명하는 쿼리의 시작 위치(바이트)를 나타냅니다.

statement_end_offset

int

0부터 시작하여 일괄 처리 또는 지속형 개체의 텍스트 내에서 행이 설명하는 쿼리의 끝 위치(바이트)를 나타냅니다. 값이 -1인 경우 일괄 처리의 끝을 나타냅니다.

plan_generation_num

bigint

다시 컴파일한 후 계획의 인스턴스 간을 서로 구별하는 데 사용될 수 있는 시퀀스 번호입니다.

plan_handle

varbinary(64)

쿼리가 속하는 컴파일된 계획을 참조하는 토큰입니다. 이 값은 sys.dm_exec_query_plan 동적 관리 함수로 전달되어 쿼리 계획을 가져올 수 있습니다.

creation_time

datetime

이 계획이 컴파일된 시간입니다.

last_execution_time

datetime

이 계획이 마지막으로 실행된 시간입니다.

execution_count

bigint

이 계획이 마지막으로 컴파일된 이후 실행된 횟수입니다.

total_worker_time

bigint

이 계획이 컴파일된 이후 실행되는 데 사용된 총 CPU 시간(마이크로초)입니다.

last_worker_time

bigint

이 계획이 마지막으로 실행되었을 때 사용된 CPU 시간(마이크로초)입니다.

min_worker_time

bigint

단일 실행 중 이 계획에 사용된 최소 CPU 시간(마이크로초)입니다.

max_worker_time

bigint

단일 실행 중 이 계획에 사용된 최대 CPU 시간(마이크로초)입니다.

total_physical_reads

bigint

이 계획이 컴파일된 이후 실행될 때 수행된 총 물리적 읽기 수입니다.

last_physical_reads

bigint

이 계획이 마지막으로 실행되었을 때 수행된 물리적 읽기 수입니다.

min_physical_reads

bigint

단일 실행 중 이 계획에서 수행한 최소 물리적 읽기 수입니다.

max_physical_reads

bigint

단일 실행 중 이 계획에서 수행한 최대 물리적 읽기 수입니다.

total_logical_writes

bigint

이 계획이 컴파일된 이후 실행될 때 수행된 총 논리적 쓰기 수입니다.

last_logical_writes

bigint

이 계획이 마지막으로 실행되었을 때 수행된 논리적 쓰기 수입니다.

min_logical_writes

bigint

단일 실행 중 이 계획에서 수행한 최소 논리적 쓰기 수입니다.

max_logical_writes

bigint

단일 실행 중 이 계획에서 수행한 최대 논리적 쓰기 수입니다.

total_logical_reads

bigint

이 계획이 컴파일된 이후 실행될 때 수행된 총 논리적 읽기 수입니다.

last_logical_reads

bigint

이 계획이 마지막으로 실행되었을 때 수행된 논리적 읽기 수입니다.

min_logical_reads

bigint

단일 실행 중 이 계획에서 수행한 최소 논리적 읽기 수입니다.

max_logical_reads

bigint

단일 실행 중 이 계획에서 수행한 최대 논리적 읽기 수입니다.

total_clr_time

bigint

이 계획이 컴파일된 이후 실행될 때 Microsoft .NET Framework CLR(공용 언어 런타임) 개체 내에서 사용한 시간(마이크로초)입니다. CLR 개체는 저장 프로시저, 함수, 트리거, 유형 및 집계일 수 있습니다.

last_clr_time

bigint

이 계획이 마지막으로 실행되는 동안 .NET Framework CLR 개체 내에서 사용한 시간입니다. CLR 개체는 저장 프로시저, 함수, 트리거, 유형 및 집계일 수 있습니다.

min_clr_time

bigint

단일 실행 중 .NET Framework CLR 개체 내에서 이 계획을 실행하는 데 사용한 최소 시간(마이크로초)입니다. CLR 개체는 저장 프로시저, 함수, 트리거, 유형 및 집계일 수 있습니다.

max_clr_time

bigint

단일 실행 중 .NET Framework CLR 내에서 이 계획을 실행하는 데 사용한 최대 시간(마이크로초)입니다. CLR 개체는 저장 프로시저, 함수, 트리거, 유형 및 집계일 수 있습니다.

total_elapsed_time

bigint

이 계획의 실행을 완료하는 데 소요된 총 경과 시간(마이크로초)입니다.

last_elapsed_time

bigint

가장 최근에 이 계획의 실행을 완료하는 데 소요된 경과 시간(마이크로초)입니다.

min_elapsed_time

bigint

이 계획의 실행을 완료하는 데 소요된 최소 경과 시간(마이크로초)입니다.

max_elapsed_time

bigint

이 계획의 실행을 완료하는 데 소요된 최대 경과 시간(마이크로초)입니다.

사용 권한

서버에 대한 VIEW SERVER STATE 권한이 필요합니다.

주의

쿼리가 완료되면 뷰의 통계가 업데이트됩니다.

다음 예에서는 평균 CLR 시간을 기준으로 상위 5개의 쿼리에 대한 정보를 반환합니다.

SELECT TOP 5 creation_time, last_execution_time, total_clr_time,
    total_clr_time/execution_count AS [Avg CLR Time], last_clr_time,
    execution_count, 
    SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
    ((CASE statement_end_offset 
        WHEN -1 THEN DATALENGTH(st.text)
        ELSE qs.statement_end_offset END 
            - qs.statement_start_offset)/2) + 1) as statement_text
FROM sys.dm_exec_query_stats as qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st
ORDER BY total_clr_time/execution_count DESC;
GO

참고 항목

참조

동적 관리 뷰 및 함수
실행 관련 동적 관리 뷰 및 함수
sys.dm_exec_sql_text
sys.dm_exec_query_plan

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 12월 12일

변경된 내용
  • sql_handle, plan_generation_numplan_handle 열의 정의를 수정했습니다.

2006년 4월 14일

변경된 내용
  • 예를 수정했습니다.

2005년 12월 5일

새로운 내용
  • 현재 서버에서 실행 중인 작업이 있을 경우 보다 정확한 결과를 얻으려면 이 동적 관리 뷰를 여러 번 쿼리해야 한다는 참고를 추가했습니다.
  • statement_end_offsetstatement_start_offset 열이 0부터 시작하며 statement_end_offset 열의 값이 -1일 경우 일괄 처리의 끝을 나타낸다는 정보를 추가했습니다.