planetz Ответов: 1

Агрегированные данные в oracle в определенное количество дней


Всем Привет,

В моей таблице есть такие данные, как:

country 	date 	count
India 	01-10-2017 	49
USA 	03-10-2017 	42
Japan 	04-10-2017 	55
Russia 	01-10-2017 	87
UK 	02-10-2017 	17
UAE 	03-10-2017 	13
Australia 	04-10-2017 	63
India 	01-10-2017 	38
USA 	02-10-2017 	67
USA 	03-10-2017 	73
Japan 	01-10-2017 	70
Russia 	02-10-2017 	17
UK 	03-10-2017 	87
Australia 	04-10-2017 	40
UK 	02-10-2017 	30
UAE 	03-10-2017 	22
Australia 	04-10-2017 	78
India 	03-10-2017 	13
USA 	04-10-2017 	3
USA 	04-10-2017 	41
Japan 	01-10-2017 	95
Russia 	02-10-2017 	12
UK 	03-10-2017 	42
Australia 	04-10-2017 	88
UK 	01-10-2017 	3
Japan 	02-10-2017 	16

Я должен свернуть данные и найти сумму подсчета для каждой страны за каждый день, а также за каждые два дня.

Выход на каждый день будет выглядеть так:
country 	01-10-2017 	02-10-2017 	03-10-2017 	04-10-2017
Australia 	0	0	0	269
India 	87	0	13	0
Japan 	165	16	0	55
Russia 	87	29	0	0
UAE 	0	0	35	0
UK 	3	47	129	0
USA 	0	67	115	44
Grand Total 	342	159	292	368


А данные за каждые 2 дня будут выглядеть так:

country 	 1st 2days 	 last 2 days
Australia 	0	269
India 	87	13
Japan 	181	55
Russia 	116	0
UAE 	0	35
UK 	50	129
USA 	67	159
Grand Total 	501	660


Я использую oracle 10g с C#.

Кто-нибудь поможет?

Что я уже пробовал:

Я искал, чтобы узнать, что данные могут быть pivot, но это не работает с 10g!!

Maciej Los

Вы не предоставили подробностей о том, что вы пробовали...

j snooze

Может быть, это поможет.
https://stackoverflow.com/questions/13410464/pivot-on-oracle-10g