oracle菜鸟学习之 select case when的使用
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,[toc]oracle菜鸟学习之 select case when的使用格式语法case when 条件1 then action1 when 条件2 then action2 wh
千家信息网最后更新 2026年11月02日oracle菜鸟学习之 select case when的使用
[toc]
oracle菜鸟学习之 select case when的使用
格式语法
case when 条件1 then action1 when 条件2 then action2 when 条件3 then action3 when 条件N then actionN else actionend例子
判断现在是几月
SQL> select case substr('20181118',5,2) 2 when '08' then '8yue' 3 when '09' then '9yue' 4 when '10' then '10yue' 5 when '11' then '11yue' 6 when '12' then '12yue' 7 else 'other' 8 end 9 from dual;CASESUBSTR('201---------------11yueSQL> 扩展知识:substr 截取
sbustr('str',x,y)
str:字符串
x:从x位开始
y:x位的后y位结束
SQL> select substr('123456',3,2) from dual;SUBSTR------34SQL> 实验
实验表如下:
sno:学号
km:科目
score:成绩
grade:等级
create table score(sno number,km varchar2(8),score int,grade varchar2(4) default null);insert into score(sno,km,score) values(1,'yw',65);insert into score(sno,km,score) values(2,'sx',76);insert into score(sno,km,score) values(3,'yw',86);insert into score(sno,km,score) values(4,'yw',94);查看表
SQL> select * from score; SNO KM SCORE GRADE---------- ------------------------ ---------- ------------ 1 yw 65 2 sx 76 3 yw 86 4 yw 94问题:给学生成绩分等级,优秀、良好、中等、合格
思路:先查询学号对应的成绩
SQL> select sno,case 2 when score >=90 then 'A' 3 when score >=80 then 'B' 4 when score >=70 then 'C' 5 when score >=60 then 'D' 6 else 'F' 7 end 8 from score; SNO CAS---------- --- 1 D 2 C 3 B 4 A思路:怎么将等级插入表格?
update score set grade = ?思路:选出等级的值
select grade from(select sno,case when score >=90 then 'A' when score >=80 then 'B' when score >=70 then 'C' when score >=60 then 'D' else 'F' end as grade 9 from score);GRADE----------DCBA思路:grade不能等于一个集合,只能等于某个值,怎么选出某个值?
从图中可以看出,如果我把第一个表取别名为a,但a.sno和score.sno相等的时候,grade的值唯一
update score set grade = (select grade from(select sno,case when score >=90 then 'A' when score >=80 then 'B' when score >=70 then 'C' when score >=60 then 'D' else 'F' end as grade from score) a where a.sno=score.sno );4 rows updated.查看更新之后的表
SQL> select * from score; SNO KM SCORE GRADE---------- ------------------------ ---------- ---------- 1 yw 65 D 2 sx 76 C 3 yw 86 B 4 yw 94 A
思路
条件
成绩
等级
学号
选出
实验
习之
菜鸟
优秀
良好
例子
字符
字符串
学生
时候
格式
知识
科目
表格
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
亿人帮互联网科技有限公司
互联网金融与金融科技
奇酷互联网科技
善班互联网科技有限公司
大白互联网科技
深圳市运趣互联网科技有限公司
互联网金融科技公司干啥的
互联网经济与金融科技
互联网科技与管理
苏州五指互联网络科技有限
996高科技互联网公司
东莞新华互联网科技学校
浙南科技城互联网大厦招聘
风投北京互联网科技
新氧科技和美国互联网有关系吗
全球科技与互联网公司市值变化
互联网科技平台产品运营
唯美互联网科技
互联网科技博主张洲
山东蛋芒互联网科技有限公司
互联网与未来科技
云电互联网科技
腾讯科技 互联网女皇
新华互联网科技校企合作
爱医互联网络科技
互联网企业科技类企业如何做账
张召忠谈中国互联网科技
万物互联网智能科技
上海万顺科技互联网有限公司招聘
杭州融税互联网科技有限公司