enable_group_by_reordering
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 17 | on | user | boolean |
| 18 | on | user | boolean |
| 19 | on | user | boolean |
planner가 GROUP BY key의 순서를 plan 하위 노드가 제공하는 정렬 key 순서에 맞춰 재배열할지 정한다. 기본값은 on이다. PostgreSQL 17에서 추가됐다.
GROUP BY 컬럼들의 순서는 집계 결과에 영향을 주지 않는다. 이 파라미터가 켜져 있으면 planner는 GROUP BY key를 index scan 등 하위 노드의 정렬 순서에 맞춰 바꿔, sort 기반 집계에서 별도 정렬을 생략하거나 줄인 plan을 시도한다. 끄면 ORDER BY 절에 맞추는 경우를 제외하고는 GROUP BY key를 재배열하지 않는다.
운영 노트: off는 진단 용도다. GROUP BY 쿼리의 plan 변화가 의심될 때 세션에서 끄고 EXPLAIN을 비교해 재배열의 영향인지 가려낸다.
출처: PostgreSQL 18 문서