Вот так выглядит моя таблица
А вот так должна выглядеть моя таблица
Я попытался повернуть, но все примеры, непосредственно связанные с таблицей. Я не смог найти ни одного примера разворота с union, так что сейчас я в отчаянии. Если вы, ребята, имеете представление об этом предмете, это было бы очень полезно.
Это мой избранный код
WITH CTE1
AS (
SELECT
EI.EXPENSE_ITEM_ID,
EC.EXPENSE_CAT_ID,
MONTH(BP.BUDGET_PLAN_DATE) AS PLAN_MONTH,
BPR.ROW_TOTAL_INCOME PLAN_INCOME,
BPR.ROW_TOTAL_EXPENSE PLAN_EXPENSE,
EI.EXPENSE_ITEM_NAME,
EC.EXPENSE_CAT_NAME
FROM
catalyst_teknotel.BUDGET_PLAN BP
LEFT JOIN BUDGET_PLAN_ROW BPR ON BPR.BUDGET_PLAN_ID = BP.BUDGET_PLAN_ID
LEFT JOIN EXPENSE_ITEMS EI ON EI.EXPENSE_ITEM_ID = BPR.BUDGET_ITEM_ID
LEFT JOIN EXPENSE_CATEGORY EC ON EC.EXPENSE_CAT_ID = EI.EXPENSE_CATEGORY_ID
WHERE
BP.BUDGET_ID = (SELECT TOP 1 BUDGET_ID FROM BUDGET WHERE PERIOD_YEAR = 2019)
)
(
SELECT
SUM(PLAN_EXPENSE) PLAN_EXPENSE,
SUM(PLAN_INCOME) PLAN_INCOME,
PLAN_MONTH,
EXPENSE_CAT_ID,
0 AS EXPENSE_ITEM_ID,
'' AS EXPENSE_ITEM_NAME,
EXPENSE_CAT_NAME
FROM
CTE1
GROUP BY
PLAN_MONTH,
EXPENSE_CAT_ID,
EXPENSE_CAT_NAME
UNION ALL
SELECT
SUM(PLAN_EXPENSE) PLAN_EXPENSE,
SUM(PLAN_INCOME) PLAN_INCOME,
PLAN_MONTH,
0 AS EXPENSE_CAT_ID,
EXPENSE_ITEM_ID,
EXPENSE_ITEM_NAME,
'' AS EXPENSE_CAT_NAME
FROM
CTE1
GROUP BY
PLAN_MONTH,
EXPENSE_ITEM_ID,
EXPENSE_ITEM_NAME
)