Advertisement
Guest User

Untitled

a guest
Aug 2nd, 2012
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. DECLARE @sql AS varchar(max)
  2. DECLARE @pivot_list0 AS varchar(max)
  3. DECLARE @select_list0 AS varchar(max)
  4. DECLARE @pivot_list1 AS varchar(max)
  5. DECLARE @select_list1 AS varchar(max)
  6.  
  7. SELECT @pivot_list0 = COALESCE(@pivot_list0 + ', ', '') + '[' + DB2_TOTAL_CODES + ']', @select_list0 = COALESCE(@select_list0 + ', ', '') + 'ISNULL([' + DB2_TOTAL_CODES + '], 0) AS [' + DB2_TOTAL_CODES + ']'
  8. FROM ( SELECT DISTINCT SCOREQuali_1 + '_' + SCOREQuali_39 + '_DB2_TOTAL' AS DB2_TOTAL_CODES FROM [dbo].[KXEN] ) AS DB2_TOTAL_CODES
  9. SELECT @pivot_list1 = COALESCE(@pivot_list1 + ', ', '') + '[' + klas_1_CODES + ']', @select_list1 = COALESCE(@select_list1 + ', ', '') + 'ISNULL([' + klas_1_CODES + '], 0) AS [' + klas_1_CODES + ']'
  10. FROM ( SELECT DISTINCT SCOREQuali_1 + '_' + SCOREQuali_39 + '_klas_1' AS klas_1_CODES FROM [dbo].[KXEN] ) AS klas_1_CODES
  11.  
  12. SET @sql = '
  13. ;WITH p AS (
  14. 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]
  15. FROM [dbo].[KXEN]
  16. GROUP BY [K_Sperr_Cod], [SCOREQuali_1] + ''_'' + [SCOREQuali_39] + ''_DB2TOTAL'', [SCOREQuali_1] + ''_'' + [SCOREQuali_39] + ''_KLAS_1''
  17. )
  18. SELECT [K_Sperr_Cod], ' + @select_list0 + ', ' + @select_list1 + '
  19. FROM p
  20. PIVOT (
  21. SUM([DB2_TOTAL])
  22. FOR DB2TOTAL_CODES IN (
  23. ' + @pivot_list0 + '
  24. )) AS pvt
  25. PIVOT (
  26. SUM([klas_1])
  27. FOR KLAS_1_CODES IN (
  28. ' + @pivot_list1 + '
  29. )) AS pvt2'
  30.  
  31. EXEC (@sql)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement