Необходимо создать отчет, я сделал это с помощью объединения, но это не является обязательным требованием.
Вот формулировка проблемы:
Таблица содержит информацию о продаже предметов нав некоторых магазинах за 2010 и 2011 годы. Я просто хочу отобразить сумму продаж, агрегированную на уровне товара, затем на уровне магазина, затем на уровне года, а затем на общую сумму.
Вы можете создать пример данных, используя следующие операторы SQL:
create table item_sto_year_sale_t
(
itemno integer,
store varchar2(10),
year integer,
sale integer
);
insert into item_sto_year_sale_t values(1,'A',2010,100);
insert into item_sto_year_sale_t values(2,'A',2010,200);
insert into item_sto_year_sale_t values(3,'A',2010,300);
insert into item_sto_year_sale_t values(1,'B',2010,105);
insert into item_sto_year_sale_t values(2,'B',2010,205);
insert into item_sto_year_sale_t values(1,'A',2011,110);
insert into item_sto_year_sale_t values(2,'A',2011,220);
insert into item_sto_year_sale_t values(3,'A',2011,330);
insert into item_sto_year_sale_t values(1,'B',2011,115);
insert into item_sto_year_sale_t values(2,'B',2011,225);
commit;
Желаемый результат -
ITEMNO STORE YEAR SUM
---------- ---------- ---------- ----------
1 430 ---- sum(sales) in all stores for all years where itemno = 1
2 850 ---- sum(sales) in all stores for all years where itemno = 2
3 630 ---- sum(sales) in all stores for all years where itemno = 3
A 1260 ---- sum(sales) for all items for all years in store = 'A'
B 650 ---- sum(sales) for all items for all years in store = 'A'
2010 910 ---- sum(sales) for all items in all stores where year = 2010
2011 1000 ---- sum(sales) for all items in all stores where year = 2011
Любая помощь по этому вопросу высоко ценится