add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
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 occu_cap(
id int,
occupancy INT,
capacity INT
);

INSERT INTO occu_cap VALUES (1,1232,1630);
INSERT INTO occu_cap VALUES (2,0,658);
INSERT INTO occu_cap VALUES (3,0,0);
1 rows affected
1 rows affected
1 rows affected
SELECT *,AVG(CASE WHEN capacity <> 0 AND occupancy <> 0 THEN ((occupancy::decimal/capacity * 1.0) * 100) END) OVER(PARTITION BY id)
FROM occu_cap

id occupancy capacity avg
1 1232 1630 75.582822085889570552000
2 0 658 null
3 0 0 null