대용량 테이블 레코드수 조회

일반적으로 count(*) 를 사용하지만 대용량일때는 1억건 이상일때는 검색시간이 존재하고 시간이 걸립니다. 겨우 row수 조회하는건데도 디스크 IO를 점유한다는것도 시스템에 부담을 주는것도 사실입니다.

select count(*) FROM 테이블명 WITH(NOLOCK)

위 일반적인 조회 구문보다는 아래 구문을 사용하면 IO 부담없이 금방 결과가 출력되기에 대용량 테이블인경우는 참조하여 사용하면 편합니다.

select distinct max(idx.rows)
from sysindexes as idx inner join sysobjects as obj
on (idx.id = obj.id)
where (obj.type = ‘U’) and (obj.name = ‘테이블명’)

답글 남기기

이메일 주소는 공개되지 않습니다.