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 t (tm timestamp, ConsumedFuel int, ProcessedVolume int);
insert into t values
('23-09-2021 5:00:00', 3000000, 982135),
('23-09-2021 6:00:00', 3000010, 982136),
('23-09-2021 7:00:00', 3000030, 982137),
('23-09-2021 8:00:00', 3000032, 982152);
CREATE TABLE
INSERT 0 4
SELECT
tm,
LEAD(ConsumedFuel) OVER (ORDER BY tm) - ConsumedFuel AS ConsumedFueld,
LEAD(ProcessedVolume) OVER (ORDER BY tm) - ProcessedVolume AS ProcessedVolume
FROM
t
tm | consumedfueld | processedvolume |
---|---|---|
2021-09-23 05:00:00 | 10 | 1 |
2021-09-23 06:00:00 | 20 | 1 |
2021-09-23 07:00:00 | 2 | 15 |
2021-09-23 08:00:00 | null | null |
SELECT 4