Я немного новичок в SQL. Надеюсь, вы поможете мне с этим вопросом, так как я пока не нашел ответа. Я объединил таблицы из других источников, и мне нужно создать новые столбцы, основанные на уникальных значениях одного столбца с суммой другого столбца. значения.
Например, это моя таблица:
И это то, что мне нужно получить (сумма A
для каждого уникального значения в B
, добавленного в виде столбца):
На данный момент я могу сделать это вручную следующим образом:
SELECT
EM.[id]
,SUM(CASE WHEN AM.[B]='ZA' THEN EM.[A] ELSE 0 END) "ZA_sum_A"
,SUM(CASE WHEN AM.[B]='ZB' THEN EM.[A] ELSE 0 END) "ZB_sum_A"
FROM [xxx].x.x AS AM
INNER JOIN [yyy].[y].[y] AS EM ON (AM.ELEMENT = EM.ELEMENT)
WHERE ...
GROUP BY EM.[id]
Но проблема в том, что я могу иметь сотни уникальных значений в B
. Итак, вопрос, как это сделать правильно ..