Oracle case函数使用介绍
1.创建测试表:
DROP SEQUENCE student_sequence;
CREATE SEQUENCE student_sequence START WITH 10000 INCREMENT BY 1;DROP TABLE students;
CREATE TABLE students (
id NUMBER(5) PRIMARY KEY,
first_name VARCHAR2(20),
last_name VARCHAR2(20),
major VARCHAR2(30),
current_credits NUMBER(3),
grade varchar2(2));INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
VALUES (student_sequence.NEXTVAL, 'Scott', 'Smith', 'Computer Science', 98,null);INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
VALUES (student_sequence.NEXTVAL, 'Margaret', 'Mason', 'History', 88,null);INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
VALUES (student_sequence.NEXTVAL, 'Joanne', 'Junebug', 'Computer Science', 75,null);INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
VALUES (student_sequence.NEXTVAL, 'Manish', 'Murgratroid', 'Economics', 66,null);commit;
2.查看相应数据
SQL> select * from students;ID FIRST_NAME LAST_NAME MAJOR CURRENT_CREDITS GR
---------- -------------------- -------------------- ------------------------------ --------------- --
10000 Scott Smith Computer Science 98
10001 Margaret Mason History 88
10002 Joanne Junebug Computer Science 75
10003 Manish Murgratroid Economics 66
3.更新语句
update students
set grade = (
select grade from
(
select id,
case when current_credits > 90 then 'a'
when current_credits > 80 then 'b'
when current_credits > 70 then 'c'
else 'd' end grade
from students
) a
where a.id = students.id
)
/
4.更新后结果
SQL> select * from students;ID FIRST_NAME LAST_NAME MAJOR CURRENT_CREDITS GR
---------- -------------------- -------------------- ------------------------------ --------------- --
10000 Scott Smith Computer Science 98 a
10001 Margaret Mason History 88 b
10002 Joanne Junebug Computer Science 75 c
10003 Manish Murgratroid Economics 66 d
您可能感兴趣的文章:
- Oracle case函数使用介绍
- Oracle trunc()函数的详细使用介绍
- Oracle自我补充之trunc()函数使用介绍
- hive中使用case、if:一个region统计业务(hive条件函数case、if、COALESCE语法介绍:CONDITIONAL FUNCTIONS IN HIVE)
- Oracle 分析函数使用介绍
- hive中使用case、if:一个region统计业务(hive条件函数case、if、COALESCE语法介绍:CONDITIONAL FUNCTIONS IN HIVE)
- case函数使用介绍
- oracle 使用函数,和不使用函数 行转列 列装行 (case when then else end) union pivot unpivot
- ORACLE case when 函数的使用技巧
- Oracle自我补充之Decode()函数使用介绍
- Oracle 分析函数使用介绍
- Oracle 分析函数使用介绍
- Oracle高级函数使用的浅显介绍
- 使用Oracle函数索引简单介绍(一般)
- ORACLE分析函数over(partition by...)中使用case when达到多重分组的效果
- Oracle 分析函数使用介绍
- oracle:case 语句使用(用于select子句的case语句中可以使用in这个函数)
- ORACLE分析函数over(partition by...)中使用case when达到多重分组的效果
- oracle函数介绍:dump函数使用
- oracle lpad 函数使用介绍