Oracle分析函数ntile

2014-11-23 20:25:44 · 作者: · 浏览: 27

有这么一个需求,将课程的成绩分成四个等级,为学生打A、B、C、D的绩效。

drop table course purge;
create table course
(
id number,
grade number
);
insert into course values(1,50);
insert into course values(2,55);
insert into course values(3,60);
insert into course values(4,65);
insert into course values(5,70);
insert into course values(6,75);
insert into course values(7,80);
insert into course values(8,85);
insert into course values(9,90);
insert into course values(10,95);
commit;

SQL>
select id,grade,ntile(4) over(order by grade desc) til from course; ID GRADE TIL ---------- ---------- ---------- 10 95 1 9 90 1 8 85 1 7 80 2 6 75 2 5 70 2 4 65 3 3 60 3 2 55 4 1 50 4

已选择10行。