Search

[필수:성능]존재 확인을 위한 전체 COUNT

BAD: 0.429ms, hit=17

전체 카운트 후 존재 확인
SELECT COUNT(*) >= 1 AS has_order FROM startdbpg.tr_ord_big o WHERE o.mbr_id = 'M00001' ;
SQL
복사
실행계획 보기
•
존재 여부만 필요한데 COUNT(*)로 조건에 맞는 전체 행을 집계합니다.
◦
DB 내부적으로 전체 카운트가 수행됩니다.

GOOD: 0.245ms, hit=5

존재 확인
SELECT EXISTS ( SELECT 1 FROM startdbpg.tr_ord_big o WHERE o.mbr_id = 'M00001' ) AS has_order ;
SQL
복사
실행계획 보기
•
EXISTS를 사용하면 첫 번째 일치 행을 찾는 즉시 존재 여부를 판단할 수 있습니다.
💡

KEY POINT

•
존재 여부만 필요한 경우, 전체 건수를 집계하는 COUNT(*)보다 EXISTS를 우선 사용합니다.
•
EXISTS는 조건에 맞는 첫 행을 찾으면 탐색을 끝낼 수 있습니다. 실행계획에서 실제 처리 행 수와 버퍼 사용량을 비교해 효과를 확인합니다.