2016-08-31 2 views
0

У меня есть таблица mytable с полем времени события evtime. Чтобы суммировать количество записей в день, я использую:Почасовое общее количество записей в таблице за один день

select date_trunc('day',evtime), 
     count(1) as entries 
from mytable 
group by date_tunc('day',evtime); 

Это нормально работает. Но теперь, на одну конкретную дату, я хотел бы видеть итоги в час.

+0

[изменить] ваш вопрос и добавить некоторые примерные данные и ожидаемый результат на основе этих данных. [_Formatted_] (http://stackoverflow.com/editing-help#code) ** текст **, пожалуйста, [без скриншотов] (http://meta.stackoverflow.com/questions/285551/why-may-i -not-upload-images-of-code-on-so-when-ask-a-question/285557 # 285557) –

ответ

0

Это вы имеете в виду?

select date_trunc('hour', evtime), 
     count(*) as entries 
from mytable 
where date_trunc('day', evtime) = $yourdate 
group by date_tunc('hour', evtime); 

Или это происходит со мной, что вы хотите, резюме на день в большинстве дней и на час на один. Если да:

select (case when date_trunc('day', evtime) = $yourdate 
      then date_trunc('hour', evtime) 
      else date_trunc('day', evtime) 
     end) as day_hour, 
     count(*) as entries 
from mytable 
group by day_hour; 
+0

Спасибо за помощь, Гордон. Так оно и было. – Lyle