如何以分钟而不是小时为基础获取数据?
How to get data on minute base instead of hourly base?
我使用以下查询来获取按小时计算的数据:
select to_char(trunc(time, 'HH'), 'DD/MM/YY HH24') as "date",
count(event), count(distinct id) from source
where time >= date '2021-01-01'
group by trunc(time,'HH')
order by trunc(time,'HH');
我现在想做的是相同的,但以分钟为基础。我怎样才能完成这项工作?
对我来说,你本可以完全避免使用 trunc
,因为你仍然使用 TO_CHAR
:
select to_char(time, 'dd/mm/yy hh24') ...
如果你想包括分钟,没问题:
select to_char(time, 'dd/mm/yy hh24:mi') as "date",
count(event), count(distinct id)
from source
where ...
group by to_char(time, 'dd/mm/yy hh24:mi')
请注意,按 字符串 排序可能不会产生所需的结果。也许,如果您将日期格式更改为例如'yyyymmdd hh24:mi'
我使用以下查询来获取按小时计算的数据:
select to_char(trunc(time, 'HH'), 'DD/MM/YY HH24') as "date",
count(event), count(distinct id) from source
where time >= date '2021-01-01'
group by trunc(time,'HH')
order by trunc(time,'HH');
我现在想做的是相同的,但以分钟为基础。我怎样才能完成这项工作?
对我来说,你本可以完全避免使用 trunc
,因为你仍然使用 TO_CHAR
:
select to_char(time, 'dd/mm/yy hh24') ...
如果你想包括分钟,没问题:
select to_char(time, 'dd/mm/yy hh24:mi') as "date",
count(event), count(distinct id)
from source
where ...
group by to_char(time, 'dd/mm/yy hh24:mi')
请注意,按 字符串 排序可能不会产生所需的结果。也许,如果您将日期格式更改为例如'yyyymmdd hh24:mi'