Conversion de valeurs de ligne en ColumnName

Tableau: SampleTbl

  Values Name --------------------- 23 id 33 b_id 2014-12-10 Date 55 t_id NULL p_id NULL comments 24 id 34 b_id 2014-12-11 Date 56 t_id NULL p_id NULL comments 

Résultat attendu:

 id b_id Date t_id p_id comments ------------------------------------------------------ 23 33 2014-12-10 55 NULL NULL 24 34 2014-12-10 56 NULL NULL 

J'ai essayé d'utiliser PIVOT ,

 SELECT * FROM SampleTbl Pivot (MIN ([Values]) FOR Name IN ([id],[b_id],[Date],[t_id],[p_id],[comments])) piv 

Résultat je reçois:

 id b_id Date t_id p_id comments --------------------------------------------------- 23 33 2014-12-10 55 NULL NULL 

mais je ne reçois pas le résultat attendu. Aidez-moi à get le résultat.

Essaye ça. Utilisez la window function pour get le résultat.

 SELECT [id],[b_id],[Date], [t_id],[p_id],[comments] FROM (SELECT Row_number()OVER(partition BY name ORDER BY [values]) rn,* FROM SampleTbl) A PIVOT (Min ([Values]) FOR Name IN ([id],[b_id],[Date], [t_id],[p_id],[comments])) piv 

SQL FIDDLE DEMO