Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DECLARE @sql AS varchar(max)
- DECLARE @pivot_list0 AS varchar(max)
- DECLARE @select_list0 AS varchar(max)
- DECLARE @pivot_list1 AS varchar(max)
- DECLARE @select_list1 AS varchar(max)
- SELECT @pivot_list0 = COALESCE(@pivot_list0 + ', ', '') + '[' + DB2_TOTAL_CODES + ']', @select_list0 = COALESCE(@select_list0 + ', ', '') + 'ISNULL([' + DB2_TOTAL_CODES + '], 0) AS [' + DB2_TOTAL_CODES + ']'
- FROM ( SELECT DISTINCT SCOREQuali_1 + '_' + SCOREQuali_39 + '_DB2_TOTAL' AS DB2_TOTAL_CODES FROM [dbo].[KXEN] ) AS DB2_TOTAL_CODES
- SELECT @pivot_list1 = COALESCE(@pivot_list1 + ', ', '') + '[' + klas_1_CODES + ']', @select_list1 = COALESCE(@select_list1 + ', ', '') + 'ISNULL([' + klas_1_CODES + '], 0) AS [' + klas_1_CODES + ']'
- FROM ( SELECT DISTINCT SCOREQuali_1 + '_' + SCOREQuali_39 + '_klas_1' AS klas_1_CODES FROM [dbo].[KXEN] ) AS klas_1_CODES
- SET @sql = '
- ;WITH p AS (
- SELECT [K_Sperr_Cod], [SCOREQuali_1] + ''_'' + [SCOREQuali_39] + ''_DB2TOTAL'' AS DB2TOTAL_CODES, [SCOREQuali_1] + ''_'' + [SCOREQuali_39] + ''_KLAS_1'' AS KLAS_1_CODES, SUM([DB2_TOTAL]) AS [DB2_TOTAL], SUM([klas_1]) AS [klas_1]
- FROM [dbo].[KXEN]
- GROUP BY [K_Sperr_Cod], [SCOREQuali_1] + ''_'' + [SCOREQuali_39] + ''_DB2TOTAL'', [SCOREQuali_1] + ''_'' + [SCOREQuali_39] + ''_KLAS_1''
- )
- SELECT [K_Sperr_Cod], ' + @select_list0 + ', ' + @select_list1 + '
- FROM p
- PIVOT (
- SUM([DB2_TOTAL])
- FOR DB2TOTAL_CODES IN (
- ' + @pivot_list0 + '
- )) AS pvt
- PIVOT (
- SUM([klas_1])
- FOR KLAS_1_CODES IN (
- ' + @pivot_list1 + '
- )) AS pvt2'
- EXEC (@sql)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement