Я использую следующий запрос для почасового подсчета моих данных:

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');

Теперь я хочу сделать то же самое, но на минутной основе. Как я могу это сделать?

0
Tobitor 11 Май 2021 в 19:31

1 ответ

Лучший ответ

На мой взгляд, вы могли бы полностью избежать 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'

1
Littlefoot 11 Май 2021 в 16:40