본문 바로가기

DataBase/MSSQL

COUNT(*) 과 COUNT(1) 성능차이 | ChatGPT

728x90
반응형

'COUNT(*)'과 'COUNT(1)'은 둘 다 테이블의 레코드 수를 센다.

성능 차이는 무시할 수 있는 정도

그러나 이 두 가지 표현 간의 성능 차이는 일반적으로 무시할 수 있을 정도로 작다.
어떤 것을 사용하더라도 실제로 성능상의 큰 영향을 미치지 않을 것이다.

데이터베이스 시스템은 `COUNT(*)`와 `COUNT(1)`을 대부분 동일한 방식으로 처리한다.

COUNT(*) 는 레코드 수만 세는 것

그 이유는 `COUNT(*)`는 모든 컬럼을 선택하는 것이 아니라 레코드 수만을 세는 것이기 때문에,
`COUNT(1)`과 같이 간단한 상수를 사용하는 것과 비슷한 처리 방식을 채택하기 때문이다.

가독성과 코드 일관성 고려 할 것

따라서 성능 차이를 기대하기보다는 가독성과 코드 일관성을 고려하여 둘 중 어떤 것을 선택할지 결정하실 것을 권장한다.

이 두 표현 사이의 성능 차이는 대개 미미하며, 둘 중 어느 것을 선택하더라도 성능적인 이슈는 발생하지 않을 것이다.

출처 | ChatGPT

728x90
반응형