Se det som hinkar, NTILE(2) kommer att göra 2 hinkar, hälften av raderna kommer att ha värdet 1 och den andra hälften värdet 2
exempel
create table #temp(StudentID char(2), Marks int)
insert #temp values('S1',75 )
insert #temp values('S2',83)
insert #temp values('S3',91)
insert #temp values('S4',83)
insert #temp values('S5',93 )
select NTILE(2) over(order by Marks),*
from #temp
order by Marks
Här är resultatet, eftersom du har ett ojämnt antal rader kommer hink 1 att ha 1 rad till
1 S1 75
1 S2 83
1 S4 83
2 S3 91
2 S5 93
Om du lägger till en rad till
insert #temp values('S6',92 )
Nu har båda skoporna 3 rader
1 S1 75
1 S2 83
1 S4 83
2 S3 91
2 S6 92
2 S5 93
I verkligheten har jag aldrig använt NTILE i produktionskod men jag kan se användningen där du behöver dela upp resultaten i n antal hinkar