Oracle数据库判断数字处于哪个范围

2024-12-19 08:24:16
推荐回答(4个)
回答1:

可用case when语句判断数字所处的范围。

如student表中有如下数据:

要求查出,每个人的分数档次,90-100分为优秀,80-89分为良好,60-79分为及格,60分以下为不及格。语句为:

select name,score,
case when score between 90 and 100 then '优秀'
  when score between 80 and 89 then '良好'
    when score between 60 and 79 then '及格'
      when score <60 then '不及格' end 分数档次 from student;

执行结果为:

回答2:

select 等级,分值 from (
select 等级,分值 from 表 where 分值<=传入的数字 order by 分值 desc) where rownum=1

回答3:

--创建一个过程
CREATE OR REPLACE PROCEDURE get_grade(p_number NUMBER)
IS
BEGIN
IF p_number > 90 THEN
dbms_output.put_line('A');
ELSIF p_number > 80 AND p_number <= 90 THEN
dbms_output.put_line('B');
END IF;
END;
--测试
BEGIN
get_grade(82);
END ;

回答4:

case when呀,行不