By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
Help with an interesting Postgres question: Why isn't an Index Only Scan used on a partition accessed via the parent table?.
| version |
|---|
| PostgreSQL 15.0 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-10), 64-bit |
SELECT 1
CREATE TABLE
INSERT 0 2
| typed | constructor | subquery | typed = typed | typed = constructor | typed = subquery | constructor = typed | constructor = constructor | subquery = typed | subquery = constructor | subquery = subquery |
|---|---|---|---|---|---|---|---|---|---|---|
| (1,2) | (1,2) | (1,2) | t | t | t | t | t | t | t | t |
| (3,) | (3,) | (3,) | t | t | t | t | null | t | t | t |
SELECT 2
| subquery = constructor |
|---|
| t |
| t |
SELECT 2
ERROR: subquery has too few columns LINE 1: SELECT ROW(a, b) = (SELECT ROW(a, b)) AS "constructor = subq... ^