В настоящее время я учусь на книге "Язык SQL" для среды Oracle.Ниже приведен один из примеров PIVOT:
SELECT * FROM
(SELECT Channel, State, SalesAmount FROM SalesSummary)
PIVOT (SUM(SalesAmount) FOR State IN ('NY', 'VT'));
Однако для этого простого примера в таблице SalesSummary есть только два состояния.У меня вопрос: есть ли простой способ перечислить состояния из гипотетической таблицы, которая содержит все 50 состояний - вместо ручного ввода?
Я пробовал следующее как вложенный запрос безрезультатно:
SELECT * FROM
(SELECT Channel, State, SalesAmount FROM SalesSummary)
PIVOT (SUM(SalesAmount) FOR State IN (SELECT DISTINCT(STATE)
FROM SALESSUMMARY));
Мне интересно, есть ли эффективный способ перечислить все ГОСУДАРСТВА в одном столбце вместо ручного ввода.