怎么让图一的查询结果像图二那样按顺序一行只显示10个呢?
是一条sql语句就能搞定,还是得靠后台实现啊,怎么写啊
或者我用后台查出了所有的结果,前台function可以实现一行显示10个嘛,怎么写这个function啊


怎么让图一的查询结果像图二那样按顺序一行只显示10个呢?
是一条sql语句就能搞定,还是得靠后台实现啊,怎么写啊
或者我用后台查出了所有的结果,前台function可以实现一行显示10个嘛,怎么写这个function啊


关注with t as
(select employee_id,
trunc((row_number() over(order by employee_id) - 1) / 10)+1 g,
mod(row_number() over(order by employee_id) - 1, 10) m
from hr.employees)
select "1", "2", "3", "4", "5", "6", "7", "8", "9", "10","11"
from t
pivot (min(employee_id) for g in(1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11))
order by m

sqlserver 写法如下
with t as
(select RbAd ,
floor((row_number() over(order by RbAd ) - 1) / 10)+1 g,
(row_number() over(order by RbAd ) - 1)%10 m
from T_RbInfo where QgId='D1D1D1C1')
select [1], [2], [3], [4], [5], [6], [7], [8], [9], [10],[11]
from t
pivot (min(RbAd ) for g in([1], [2], [3], [4], [5], [6], [7], [8], [9], [10],[11])) as tt
