나는 문서 에서 count(*)와 의 차이점을 보았습니다 count(pk). 나는 존재에 대해 모르고 count(pk)(어디서나 pk) 사용하고 있었다 .SERIAL PRIMARY KEYcount(*)
내 질문은 Postgres의 내부 최적화에 관한 것입니다. a SERIAL PRIMARY KEY가 모든 행에 존재하고 거짓이 아니며 행을 계산하거나 각 행에 대해 중복 술어 검사를 수행 한다는 것을 선택하는 것이 똑똑 합니까? 나는 이것이 무의미한 최적화 일 것임에 동의하지만 나는 단지 궁금합니다.
나는의 출력에서보고했다 EXPLAIN및 EXPLAIN VERBOSE를 들어 count(*), count(id)하고 count(id > 50)있는지 확인하기 위해 EXPLAIN출력의 조건을 확인 언급했다. 그렇지 않습니다.