我是指的是查询出来的数据。比如 select 姓名 from table 要在第10个人的时候 换 成另一行来显示,每列是10人
举个例子吧,你把sys.objects 换成你的表就好了;WITH temp AS ( SELECT name,num = (ROW_NUMBER() OVER (ORDER BY name) - 1)/10 FROM sys.objects ) SELECT STUFF((SELECT ',' + name FROM temp B WHERE A.num = B.num FOR XML PATH('')),1,1,'')AS name FROM temp A GROUP BY num
?
select col1 from tb
union all
select col2 from tb
union all
.......
AS
(
SELECT name,num = (ROW_NUMBER() OVER (ORDER BY name) - 1)/10
FROM sys.objects
)
SELECT STUFF((SELECT ',' + name FROM temp B
WHERE A.num = B.num FOR XML PATH('')),1,1,'')AS name
FROM temp A
GROUP BY num