gpt4 book ai didi

sql - 选择每日/每小时数据

转载 作者:行者123 更新时间:2023-11-29 12:47:38 25 4
gpt4 key购买 nike

我必须生成一份报告,说明每天和每小时完成的任务量。这样,报告将看起来像一个网格。

我想要横轴是一个月中的几天(从 1 到 31),竖轴是小时(从 8:00 到 18:00)。

如何在 PostgreSQL 中使用 SQL 从数据库中选择这种数据?

最佳答案

您要查找的查询是 SQL 聚合查询。它可能看起来有点复杂,但结构非常简单。

select extract(hour from date_time_of_task) as thehour,
sum(case when extract(day from date_time_of_task) = 1 then 1 else 0 end) as day_01,
sum(case when extract(day from date_time_of_task) = 2 then 1 else 0 end) as day_02,
sum(case when extract(day from date_time_of_task) = 3 then 1 else 0 end) as day_03,
sum(case when extract(day from date_time_of_task) = 4 then 1 else 0 end) as day_04,
... up to day 31
group by extract(hour from date_time_of_task)
order by 1

这只是按一天中的小时分组。然后,它会手动为每个月的每一天旋转数据。 “总和”计算同时满足两个条件的行数——行的小时数和列的天数。

关于sql - 选择每日/每小时数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10787765/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com