TSQL Challenge 15 - Solution by Ramdas Narayanan



-- File Name: ramdas_narayanan_tsqlchallenge_15.sql

SELECT Row, 
CASE WHEN Row % cr.[1] = 0 THEN 'x' ELSE '' END AS [1],
CASE WHEN Row % cr.[2] = 0 THEN 'x' ELSE '' END AS [2],
CASE WHEN Row % cr.[3] = 0 THEN 'x' ELSE '' END AS [3],
CASE WHEN Row % cr.[4] = 0 THEN 'x' ELSE '' END AS [4],
CASE WHEN Row % cr.[5] = 0 THEN 'x' ELSE '' END AS [5],
CASE WHEN Row % cr.[6] = 0 THEN 'x' ELSE '' END AS [6],
CASE WHEN Row % cr.[7] = 0 THEN 'x' ELSE '' END AS [7],
CASE WHEN Row % cr.[8] = 0 THEN 'x' ELSE '' END AS [8],
CASE WHEN Row % cr.[9] = 0 THEN 'x' ELSE '' END AS [9]

FROM @Rows CROSS JOIN
(SELECT '1' AS [1],'2' AS [2],'3'AS [3], '4' AS [4], '5' AS [5], '6' AS [6], '7' AS [7], '8' AS [8], '9' AS [9]
FROM
(SELECT COL FROM @Cols) p
PIVOT
(SUM(COL) FOR COL IN ([1],[2],[3],[4],[5],[6],[7],[8],[9])
) AS pvt
) cr
ORDER BY Row

Did you find something incorrect/wrong with this solution? Take a few seconds to Report It.

Did you understand how this solution work? If you find it difficult to understand, you can Request an Explanation or you can Write an explanation to help others better understand this solution.