drew.allen (8/19/2013)
WITH ROLLUP is being deprecated in favor of the ROLLUP() function. Here is the query rewritten using the ROLLUP() function.
;WITH CTE0 AS
(
SELECT Section
,NAME
,RowOrdering = ROW_NUMBER() OVER (ORDER BY Section, NAME)
FROM #source
GROUP BY ROLLUP(Section, NAME)
)
SELECT VALUE= CASE WHEN NAME IS NULL THEN Section ELSE NAME END
FROM CTE0 c
WHERE Section IS NOT NULL
ORDER BY RowOrdering
Thank you drew.allen