• CREATE TABLE #Temp([Group] CHAR(1),Name CHAR(1),Value INT)

    INSERT INTO #Temp([Group],Name,Value)

    SELECT 'p','a',1 UNION ALL

    SELECT 'p','b',2 UNION ALL

    SELECT 'p','c',3 UNION ALL

    SELECT 'p','d',4 UNION ALL

    SELECT 'q','a',5 UNION ALL

    SELECT 'q','b',6 UNION ALL

    SELECT 'q','d',7 UNION ALL

    SELECT 'r','a',8 UNION ALL

    SELECT 'r','b',9 UNION ALL

    SELECT 'r','c',10 UNION ALL

    SELECT 'r','d',11

    SELECT [Group],

    SUM(CASE WHEN Name = 'a' THEN Value END) AS [a],

    SUM(CASE WHEN Name = 'b' THEN Value END) AS ,

    SUM(CASE WHEN Name = 'c' THEN Value END) AS [c],

    SUM(CASE WHEN Name = 'd' THEN Value END) AS [d]

    FROM #Temp

    GROUP BY [Group]

    ____________________________________________________

    Deja View - The strange feeling that somewhere, sometime you've optimised this query before

    How to get the best help on a forum

    http://www.sqlservercentral.com/articles/Best+Practices/61537