查询sql有多个行转列,怎么写

如题所述

-- 试一试。。。 create table #test(姓名 nvarchar(10),学号 nvarchar(10),题号 nvarchar(10), 答案 nvarchar(10))goinsert into #testselect '张三','001','1','A'union allselect '张三','001','2','C'union allselect '李四','002','1','B'union allselect '李四','002','2','D' select * from #test dECLARE @sql VARCHAR(max)SET @sql=''SELECT @sql= @sql+',[' + 题号+']' FROM #test GROUP BY 题号SET @sql = STUFF(@sql,1,1,'')SET @sql='select * from #test pivot (max(答案) for 题号 in ('+@sql+'))a'PRINT @sqlexec(@sql)
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答