2015-11-11 3 views
0

Мой вопрос похож на это, но ответ не то, что я хочу:SUM ПЕРЕГОВОРИМОСТЬ И ГРУППА за один проход?

Cannot use group by and over(partition by) in the same query?

Моя таблица выглядит так:

CODE_1 CODE_2 AMOUNT 
A  A.1  2 
A    4 
A    6 
B    1 
B  B.1  3 
B  B.1  5 

Я хочу, чтобы получить общее количество Code_1 и [Code_1 , Code_2] следующим образом:

CODE_1 CODE_2 Total_1 Total_2 
A  A1  12  2 
B  B1  9  8 

Могу ли я получить результат в одном SELECT? Благодаря!

+0

Какую вы используете? DB2? Добавьте соответствующий тег. –

+0

Используйте производную таблицу или CTE. Сделайте группировку во внутренней таблице. – shawnt00

+0

Могут ли быть разные значения 'CODE_2' для заданного' CODE_1'? Если да, то что должно выглядеть на вашем выходе? –

ответ

3

Это вы что искали? Трудно понять, как вы намерены обрабатывать данные CODE_2:

select 
    code_1, 
    max(CODE_2) as CODE_2, 
    sum(AMOUNT) as Total_1, 
    sum(case when CODE_2 is not null then AMOUNT end) as Total_2 
from T 
    group by CODE_1 
Смежные вопросы