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?.
CREATE TABLE
INSERT 0 9
metering_point_id | device_id | start_at | end_at |
---|---|---|---|
meter1 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter1 | device1 | 2020-01-03 00:00:00 | 2025-01-02 00:00:00 |
meter1 | device1 | 2025-01-02 00:00:00 | 2025-01-02 14:00:00 |
meter2 | device1 | 2020-01-02 10:30:00 | 2020-01-02 11:30:00 |
meter3 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter3 | device1 | 2020-01-03 00:00:00 | 2020-01-03 11:30:00 |
meter4 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter4 | device1 | 2020-01-03 00:00:00 | 2020-01-03 00:00:00 |
meter5 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter5 | device1 | 2020-01-03 00:00:00 | 2020-01-07 00:00:00 |
meter5 | device1 | 2020-01-07 00:00:00 | 2020-01-07 00:00:00 |
meter6 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter6 | device1 | 2020-01-03 00:00:00 | 2020-01-03 01:00:00 |
meter7 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
meter7 | device1 | 2020-01-03 00:00:00 | 2020-01-04 00:00:00 |
meter7 | device1 | 2020-01-04 00:00:00 | 2020-01-04 00:00:00 |
meter8 | device1 | 2020-01-02 00:00:00 | 2020-01-02 01:00:00 |
meter9 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
meter9 | device1 | 2020-01-03 00:00:00 | 2020-01-03 00:00:00 |
SELECT 19
metering_point_id | device_id | start_at | end_at |
---|---|---|---|
meter1 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter1 | device1 | 2020-01-03 00:00:00 | 2025-01-02 00:00:00 |
meter1 | device1 | 2025-01-02 00:00:00 | 2025-01-02 14:00:00 |
meter2 | device1 | 2020-01-02 10:30:00 | 2020-01-02 11:30:00 |
meter3 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter3 | device1 | 2020-01-03 00:00:00 | 2020-01-03 11:30:00 |
meter4 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter5 | device1 | 2020-01-02 00:00:00 | 2020-01-07 00:00:00 |
meter6 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter6 | device1 | 2020-01-03 00:00:00 | 2020-01-03 01:00:00 |
meter7 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
meter7 | device1 | 2020-01-03 00:00:00 | 2020-01-04 00:00:00 |
meter8 | device1 | 2020-01-02 00:00:00 | 2020-01-02 01:00:00 |
meter9 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
SELECT 14
metering_point_id | device_id | start_at | end_at |
---|---|---|---|
meter1 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter1 | device1 | 2020-01-03 00:00:00 | 2025-01-02 00:00:00 |
meter1 | device1 | 2025-01-02 00:00:00 | 2025-01-02 14:00:00 |
meter2 | device1 | 2020-01-02 10:30:00 | 2020-01-02 11:30:00 |
meter3 | device1 | 2020-01-02 10:30:00 | 2020-01-03 11:30:00 |
meter4 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter5 | device1 | 2020-01-02 00:00:00 | 2020-01-07 00:00:00 |
meter6 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter6 | device1 | 2020-01-03 00:00:00 | 2020-01-03 01:00:00 |
meter7 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
meter7 | device1 | 2020-01-03 00:00:00 | 2020-01-04 00:00:00 |
meter8 | device1 | 2020-01-02 00:00:00 | 2020-01-02 01:00:00 |
meter9 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
SELECT 13
metering_point_id | device_id | start_at | end_at |
---|---|---|---|
meter1 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter1 | device1 | 2020-01-03 00:00:00 | 2025-01-02 00:00:00 |
meter1 | device1 | 2025-01-02 00:00:00 | 2025-01-02 14:00:00 |
meter2 | device1 | 2020-01-02 10:30:00 | 2020-01-02 11:30:00 |
meter3 | device1 | 2020-01-02 10:30:00 | 2020-01-03 11:30:00 |
meter4 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter5 | device1 | 2020-01-02 00:00:00 | 2020-01-07 00:00:00 |
meter6 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter6 | device1 | 2020-01-03 00:00:00 | 2020-01-03 01:00:00 |
meter7 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
meter7 | device1 | 2020-01-03 00:00:00 | 2020-01-04 00:00:00 |
meter8 | device1 | 2020-01-02 00:00:00 | 2020-01-02 01:00:00 |
meter9 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
SELECT 13
metering_point_id | device_id | start_at | end_at |
---|---|---|---|
meter1 | device1 | 2020-01-02 10:30:00 | 2020-01-03 00:00:00 |
meter1 | device1 | 2020-01-03 00:00:00 | 2025-01-02 00:00:00 |
meter1 | device1 | 2025-01-02 00:00:00 | 2025-01-02 14:00:00 |
meter2 | device1 | 2020-01-02 10:30:00 | 2020-01-02 11:30:00 |
meter3 | device1 | 2020-01-02 10:30:00 | 2020-01-03 11:30:00 |
meter4 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter5 | device1 | 2020-01-02 00:00:00 | 2020-01-07 00:00:00 |
meter6 | device1 | 2020-01-02 00:00:00 | 2020-01-03 00:00:00 |
meter6 | device1 | 2020-01-03 00:00:00 | 2020-01-03 01:00:00 |
meter7 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
meter7 | device1 | 2020-01-03 00:00:00 | 2020-01-04 00:00:00 |
meter8 | device1 | 2020-01-02 00:00:00 | 2020-01-02 01:00:00 |
meter9 | device1 | 2020-01-02 10:00:00 | 2020-01-03 00:00:00 |
SELECT 13