SQLServer获取每组前10%的数据

 

sqlserver2005有关键字ntile(x)和over(partition by.. order by..)子句配合.

比如获取每个表的前10%个字段。

select id , name , colid , rn from(
select * , rn = ntile( 10)
over( partition by id order by colorder)
from syscolumns ) t where rn = 1
posted @ 2022-12-03 09:15  星火燎猿*  阅读(392)  评论(0编辑  收藏  举报