sql server ntile 分组

create table #t
(
id int,
age int
)

insert into #t(id,age)values(12,122),(8,88),(8,88),(8,88),(8,88)
select * from #t

-- 1 计算基本组的记录数=5(记录数)/3(指定的ntile组数)=1
-- 2 前面的r(r=记录数%指定的ntile组数)个组比基本组的记录数多一条记录,r=2
select NTILE(3) over(order by (select 0))'tilt',*
from #t

结果:

 

posted @ 2020-10-30 15:17  温故纳新  阅读(301)  评论(0编辑  收藏  举报