do likeSELECT MAX( CASE WHEN (Rn-1)/4 = 0 THEN G ELSE NULL END) AS G1,MAX( CASE WHEN (Rn-1)/4 = 0 THEN P ELSE NULL END) AS P1,MAX( CASE WHEN (Rn-1)/4 = 0 THEN A ELSE NULL END) AS A1,MAX( CASE WHEN (Rn-1)/4 = 1 THEN G ELSE NULL END) AS G2,MAX( CASE WHEN (Rn-1)/4 = 1 THEN P ELSE NULL END) AS P2,MAX( CASE WHEN (Rn-1)/4 = 1 THEN A ELSE NULL END) AS A2,MAX( CASE WHEN (Rn-1)/4 = 2 THEN G ELSE NULL END) AS G3,MAX( CASE WHEN (Rn-1)/4 = 2 THEN P ELSE NULL END) AS P3,MAX( CASE WHEN (Rn-1)/4 = 2 THEN A ELSE NULL END) AS A3,....MAX( CASE WHEN (Rn-1)/4 = 3 THEN P ELSE NULL END) AS P4,MAX( CASE WHEN (Rn-1)/4 = 3 THEN A ELSE NULL END) AS A4FROM(SELECT *,ROW_NUMBER() OVER (ORDER BY G) AS RnFROM table)tGROUP BY (Rn-1)%4
------------------------------------------------------------------------------------------------------SQL Server MVPhttp://visakhm.blogspot.com/