У меня есть таблица с именем индустрия. Есть 6 полей. Схема приведена ниже.
В этом случае мне нужно выполнить пользовательские агрегации. В базе 22 области. Необходимо сделать два пользовательских агрегата:
- Области 1-17 необходимо объединить в новую область со значением 00.
- Области 20 и 21 необходимо преобразовать в другое со значением кода 99.
Далее моя попытка создать общую основу для этого. Я предполагаю, что создание новой таблицы - самый простой способ принять это. Внизу очень короткий пример предполагаемого результата.
create table industry2
(
year char(4),
qtr char(2),
area char(6),
industry char(3),
ownership char(2),
employment numeric(8,0)
);
INSERT INTO Industry2
(year, qtr, area, industry, ownership, employment)
SELECT year, qtr, area, (select sum (employment) from dbo.industry where area
= '01' or area = '02' and so on):
2017 01 01 123000 1 456
2017 01 02 123000 1 101
2017 01 03 123000 1 103
2017 01 01 134000 1 6
2017 01 02 134000 1 7
2017 01 03 134000 1 12
2017 01 09 134000 1 1
2017 01 01 144000 1 14
2017 01 20 134000 1 7
2017 01 21 134000 1 8
Ожидаемый результат
2017 01 00 123000 1 660
2017 01 00 134000 1 26
2017 01 00 144000 1 14
2017 01 99 134000 1 15