I have used Pivot pls correct me if i have done wrong
DECLARE @cols NVARCHAR(2000)
SELECT @cols = COALESCE(@cols + ',[' + Convert(varchar,Rid )+ ']', '[' + Convert(varchar,Rid ) + ']')
FROM #Temp
DECLARE @query NVARCHAR(4000)
SET @query = N'SELECT '+
@cols +'FROM (SELECT [Rid],id FROM #Temp) p
PIVOT
(min([id]) FOR [Rid] IN ( '+@cols +' )) AS pvt'
print @query
EXECUTE(@query)