mssql 최근날짜 데이터 구할때 속도(성능차이) 쿼리비교 0 2 2,574

by yky [SQLServer] [2017.11.08 08:37:19]


안녕하세요.

 

db에서 가장최근날짜를 찾아 그날짜에 저장된 다른 컬럼의 값을 가져오려하는데 성능이 어떤게 좋을까요?

 

case1) select top 1 컬럼 from 테이블 order by regdate desc -> order by 속도(계속쌓이긴 하는데 데이터가 아주 많지는 안습니다.)

 

case2) select 컬럼 from 테이블 where 날짜 = (select max(날짜) from 테이블) -> 서브쿼리 속도

 

부하가 어느게 적을까요? 아니면 성능이 더좋은방법이 있을까요?

by 마농 [2017.11.08 18:47:50]

정렬항목인 날짜항목에 당연히 인덱스가 있어야 하구요.
1번 top 쿼리는 인덱스 1번 테이블 한번 읽을 거고요
2번 max 쿼리는 인덱스 1번 읽고 다시 인덱스를 거쳐 테이블을 읽겠네요.


by dbdb [2017.11.09 11:49:48]

아 날짜컬럼에 그러면 인덱스생성후 1번 사용하는것이 효율적인가요?

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