У меня есть таблица MSGCOUNT, которая выглядит следующим образом:
SERVER CHANNEL VALUE VARIABLE VARNAME DATES TIME
---------------------------------------------------------------------
1 A 133 MessageCount MSG_COUNT_A 12-NOV-18 10:16:56
1 A 129 MessageCount MSG_COUNT_A 12-NOV-18 10:13:26
1 A 120 MessageCount MSG_COUNT_A 12-NOV-18 10:00:55
2 B 210 MessageCount MSG_COUNT_B 12-NOV-18 21:42:45
2 B 200 MessageCount MSG_COUNT_B 12-NOV-18 21:41:25
2 B 195 MessageCount MSG_COUNT_B 12-NOV-18 21:41:19
Я хочу получить общее количество сообщений, приходящих за день.
Результат запроса будет выглядеть следующим образом:
SERVER CHANNEL VALUE VARIABLE VARNAME DATE
----------------------------------------------------------
1 A 13 MessageCount MSG_COUNT_A 12-NOV-18
2 B 15 MessageCount MSG_COUNT_B 12-NOV-18
Я пытался использовать различные функции, аналитические и другие, но следующая попытка является следующей:
select server, channel, value, variable, varname, date
from
(
select time_interval as start_interval,
time_interval as end_interval,
round(MSG, 2) total_msg_recv,
channel,
server
from
(
select substr(DATES, 1,9),
round(VALUE,2) MSG,
channel,
server
from MSGCOUNT
)
)
group by date, server, channel
order by date
Это приводит к следующему результату (что неверно):
SERVER CHANNEL VALUE VARIABLE VARNAME DATE
-----------------------------------------------------
1 A 133 MessageCount MSG_COUNT_A 12-NOV-18
2 B 210 MessageCount MSG_COUNT_B 12-NOV-18
Спасибо