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