SQL: как построить сумму в день с пустым

Я хочу построить сумму из значений в час. Смотрите скриншот:

Скриншот SQL

Для этого я использовал "datepart". Теперь я хочу эти значения из части даты в формате из отметки времени. Кроме того, я хочу заполнить другие часы дня, поэтому я хочу иметь 24 строки в день.

Не могли бы вы мне помочь?

1 ответ

Сначала создайте таблицу чисел

Затем сделайте это:

select N1.Number, 
       sum(case when P2.Typ = 'outbound' then 1 else 0 end) as Outbound,
       sum(case when P2.Typ = 'inbound' then 1 else 0 end) as Inbound

from Numbers N1
left join #pstntable P2
  on N1.Number = DatePart(hh, P2.Date)
  and P2.Date between @_StartTime and @_EndTime

where N1.Number <= 24

group by N1.Number
Другие вопросы по тегам