Я работаю над проектом, для которого требуется, чтобы таблица поворачивалась так, чтобы второй столбец исходных таблиц представлял собой поле даты и был динамическим c в зависимости от того, как финансовый год превращается в столбцы с исходными столбцами таблиц от [OOA] до [OOK] становится столбцом под названием заголовка [Компонент], как показано в требуемой таблице ниже.
Я пробовал существующие доступные примеры кодов Pivot, но не могу получить правильные результаты.
Любая предоставленная помощь будет принята с благодарностью.
Спасибо всем заранее.
Исходная таблица
Желаемая таблица
Желаемая таблица
Это код, который у меня есть, но он отображает только одну строку.
/*Test Pivot Query using FTP record set*/
DECLARE @columns NVARCHAR(MAX) = ''
DECLARE @sql NVARCHAR(MAX) = ''
SELECT @columns += QUOTENAME(PPDate) + ',' FROM [dbo].
[staffing_StaffTotal]
SET @columns = LEFT(@columns, LEN(@columns) - 1)
SET @sql = 'SELECT *
FROM (
SELECT
[PPDate]
FROM
[dbo].[staffing_StaffTotal]
) t
PIVOT(
Count([PPDate])
FOR [PPDate] IN (' + @columns + ')
) AS Pivot_Table'
EXECUTE sp_executesql @sql