• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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 when 语句的用法详解
    • Oracle数据库的备份与恢复
    • Oracle误删除表数据后的数据恢复详解
    • oracle冷备份恢复和oracle异机恢复使用方法
    • oracle如何恢复被覆盖的存储过程
    • rman恢复方案和oracle异机恢复
    • Oracle数据库数据丢失恢复的几种方法总结
    • oracle drop table(表)数据恢复方法
    • oracle数据库创建备份与恢复脚本整理
    • 一次简单的Oracle恢复Case实战记录
    上一篇:oracle中读写blob字段的问题解析
    下一篇:oracle中如何获得数据库的DBID信息
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Oracle case函数使用介绍 Oracle,case,函数,使用,介绍,