Member 13268378 Ответов: 1

Изменение строк на столбцы


Я хочу изменить свои строки на столбец. Это то, что у меня есть сейчас:

ИМЯ / ГОД / ДОХОДЫ | РАСХОДЫ / СОТРУДНИКИ
Компания-1 | 2017 | €30000 | €15000 | 10
Компания-1 | 2016 | €50000 | €10000 | 8
Компания-2 | 2017 | €20000 | €5000 | 20
Компания-2 | 2016 | €80000 | €95000 | 5

И это то, чего я хочу.:

НАИМЕНОВАНИЕ | INCOME_2017 | EXPENSE_2017 | INCOME_2016 | EXPENSE_2016 |EMLOYES_2017 | .....
Компания-1 | €30000 | €15000 | €50000 | €10000 | 10
Компания-2 | €20000 | €5000 | €80000 | €95000 | 20

Есть ли у кого-нибудь идея, как я могу это сделать?

Что я уже пробовал:

Все, я скопировал и отредактировал много сценариев PIVOT и UNPIVOT, но это не сработало..

1 Ответов

Рейтинг:
2

Peter Leow

Попробуйте несколько CTE и присоединиться, например

WITH CTE2017 AS
(
   SELECT NAME, YEAR AS YEAR_2017, INCOME AS INCOME_2017, EXPENSE AS EXPENSE_2017, EMPLOYES AS EMPLOYES_2017 FROM tablename WHERE YEAR='2017'   
),
CTE2016 AS
(
   SELECT NAME, YEAR AS YEAR_2016, INCOME AS INCOME_2016, EXPENSE AS EXPENSE_2016, EMPLOYES AS EMPLOYES_2016 FROM tablename WHERE YEAR='2016'   
)
SELECT CTE2017.NAME, YEAR_2017, INCOME_2017, EXPENSE_2017, EMPLOYES_2017, YEAR_2016, INCOME_2016, EXPENSE_2016, EMPLOYES_2016 FROM CTE2017 JOIN CTE2016 ON CTE2017.NAME=CTE2016.NAME