мы можем написать общее решение для любого запроса.
--sample table
SELECT * INTO #cars
FROM ( SELECT 1 car_id, 'Ford' Make, 'Focus' Model,'Red' Color
UNION all
SELECT 2 car_id, 'Ford' Make, 'Fiesta' Model,'Silver' Color
UNION ALL
SELECT 3 car_id, 'Honda' Make, 'Accord' Model,'Silver' Color
) x
--selected record to #tmp
SELECT * INTO #tmp FROM #cars WHERE car_id=1
--generic solution
DECLARE @sql VARCHAR(max)
SET @sql=''
SELECT @sql=@sql + 'SELECT '''+Name+''' as ColumnName,
cast(['+Name+'] as varchar(500)) as Value FROM #tmp union all '
FROM tempdb.sys.columns
where object_id=object_id('tempdb..#tmp')
SET @sql = LEFT(@sql,LEN(@sql)-9) -- except last 'union all'
EXEC( @sql)
DROP TABLE #tmp,#cars