如何执行多组以获得总平均值?
How to perform multiple group to get the total average?
我有以下 table,
S.No Date,Time Block OccupancyActual OccupancyPercentage
1 1/1/2020,00:00 B1 300 40%
2 1/1/2020,01:00 B1 350 46.6%
3 1/1/2020,02:00 B1 400 53.3%
4 1/1/2020,00:00 B2 200 50%
5 1/1/2020,01:00 B2 300 75%
6 1/1/2020,02:00 B2 350 87.5%
7 2/1/2020,00:00 B1 100 13.3%
8 2/1/2020,01:00 B1 200 26.6%
.
.
.
基本上这个 table 捕获每个块(B1、B2、B3 等)每小时的占用情况(每天 24 个条目,但上面没有完全提到)。
每行包含区块的名称和当时区块中的单元数,以及区块的满百分比([it/total 区块容量中的区块数量] 作为 % )
每天整个院子的平均总占用率是每个区块(每个区块24个入口)的平均占用率与总容量之和整个院子是每个街区总容量的总和。
你能帮我写一个 postgre sql 查询来获取院子每天的平均入住率吗?类似于,
S.No Date OccupancyTotalActual OccupancyPercentage
1 1/1/2020 6000 40%
2 2/1/2020 5000 33.3%
3 3/1/2020 2500 16.6%
.
.
.
嗯。 . .这个逻辑符合你的要求吗?
select date_trunc(day, datetime),
sum(OccupancyActual),
sum(OccupancyActual) / sum(OccupancyActual / OccupancyPercentage) as OccupancyRatio
from t
group by date_trunc(day, datetime);
我有以下 table,
S.No Date,Time Block OccupancyActual OccupancyPercentage
1 1/1/2020,00:00 B1 300 40%
2 1/1/2020,01:00 B1 350 46.6%
3 1/1/2020,02:00 B1 400 53.3%
4 1/1/2020,00:00 B2 200 50%
5 1/1/2020,01:00 B2 300 75%
6 1/1/2020,02:00 B2 350 87.5%
7 2/1/2020,00:00 B1 100 13.3%
8 2/1/2020,01:00 B1 200 26.6%
.
.
.
基本上这个 table 捕获每个块(B1、B2、B3 等)每小时的占用情况(每天 24 个条目,但上面没有完全提到)。
每行包含区块的名称和当时区块中的单元数,以及区块的满百分比([it/total 区块容量中的区块数量] 作为 % )
每天整个院子的平均总占用率是每个区块(每个区块24个入口)的平均占用率与总容量之和整个院子是每个街区总容量的总和。
你能帮我写一个 postgre sql 查询来获取院子每天的平均入住率吗?类似于,
S.No Date OccupancyTotalActual OccupancyPercentage
1 1/1/2020 6000 40%
2 2/1/2020 5000 33.3%
3 3/1/2020 2500 16.6%
.
.
.
嗯。 . .这个逻辑符合你的要求吗?
select date_trunc(day, datetime),
sum(OccupancyActual),
sum(OccupancyActual) / sum(OccupancyActual / OccupancyPercentage) as OccupancyRatio
from t
group by date_trunc(day, datetime);