Я пытаюсь группировать семь дней для каждой даты, но это, похоже, не работает.Oracle GRoup на 7 дней
select
START_DATE-7 FROM_DATES,
SUM(EVENT_B),
SUM(EVENT_B)
FROM (
select
nvl(ENT1.DATE_FIELD,ENT2.DATE_FIELD)as START_DATE,
nvl(ENT1.EVENT_A,0) as EVENT_A,
nvl(ENT2.EVENT_B,0) as EVENT_B
from
(select
DATE_FIELD, SUM(NR_EVENTS) as EVENT_A
from TABLE_A
where EVENT_NAME in ('CALL', 'EDIT','INSERT')
group by START_DATE,START_HOUR,SUBSCRIBER_TYPE,CO_ID
) ENT1
FULL OUTER JOIN
(select
DATE_FIELD,
SUM(NR_EVENTS) as EVENT_B
from TABLE_B
where EVENT_NAME in ('CALL', 'EDIT','INSERT')
group by DATE_FIELD
) ENT2
on (
ENT1.DATE_FIELD=ENT2.DATE_FIELD)
)
WHERE
START_DATE >= START_DATE-7
AND START_DATE <= START_DATE-1
gROUP BY
START_DATE-7
Выход им получать:
9/8/2014 262187 280365
9/7/2014 509405 478245
9/6/2014 564663 537996
9/5/2014 661871 632689
9/4/2014 669788 638839
Его единственная сумма за один день не 7
Вывод должен быть
2014-09-15
, (сумма события со стороны, в 7 дней - 2014-09-15
-7 до 2014-09-15
), (сумма события с B стороны за 7 дней - 2014-09-15
-7 до 2014-09-15
)
2014-09-14
, (сумма события со стороны, в период 7 дней - 2014-09-14
от -7 до 2014-09-14
), (сумма события со стороны B в 7-дневного периода - 2014-09-14
-7 до 2014-09-14
)
2014-09-13
, (сумма события со стороны, в период 7 дней - 2014-09-13
от -7 до 2014-09-13
), (сумма события со стороны B в 7-дневного периода - 2014-09-13
-7 до 2014-09-13
)
и т.д. ...
Может кто-нибудь мне помочь?
Просьба представить несколько примеров данных из обеих таблиц с текущим результатом вашего запроса и некоторым ожидаемым выходом. – yamny