MS SQL 조회속도 관련 문의드립ㄴ디ㅏ. 0 2 1,764

by 잘하자~ [SQL Query] [2023.02.28 15:26:11]


쿼리에 조회조건을 변수로 줬을때는 느린데, 값을 넣고 조회하면 속도가 빠릅니다.

변수로 조회시 10초, 값으로 조회시 1초 걸립니다

실행계획도 보고 구글링도 해봤지만 원인을 모르겠습니다.

고수님들 답변 부탁드립니다.

 

쿼리 예 - 변수 지정하면 속도가 느립니다.

DECLARE @DEPT NVARCHAR(3) 

SELECT DEPT

FROM DEPT_TABLE

WHERE DEPT = @DEPT

아래와 같이 CONVERT를 했는대도 느립니다. 

WHERE DEPT = CONVERT(NVARCHAR(3), @DEPT) 

 

쿼리 예 - 값을 지정하면 속도가 빠릅니다.

DECLARE @DEPT NVARCHAR(3) 

SELECT DEPT

FROM DEPT_TABLE

WHERE DEPT = '100'

by 마농 [2023.02.28 17:04:23]
-- 인덱스 힌트를 시용해 보세요. --
SELECT DEPT
  FROM DEPT_TABLE WITH (INDEX(인덱스명))
 WHERE DEPT = @DEPT
;

 


by 뉴비디비 [2023.02.28 23:51:12]

변수를 사용하는 경우 속도가 다를 수 있는데, "파라미터 스니핑"에 따른 성능 이슈가 발생할 수 있습니다.
MS QA 내용 참고해 보세요.
https://learn.microsoft.com/en-us/answers/questions/262485/sql-server-how-to-determine-parameter-sniffing-pro


댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입