• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > Oracle case when用法

Oracle case when用法

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了Oracle,case,when,用法,CASE,表达式,以等相关知识,希望本文的分享对您有所帮助

CASE表达式可以在SQL中实现if-then-else型的逻辑,而不必使用PL/SQL。CASE的工作方式与DECODE()类似,但应该使用CASE,因为它与ANSI兼容。 注意点: 1、以CASE开头,以END结尾 2、分支中WHEN后跟条件,THEN为显示结果 3、ELSE为除此之外的默认情况,类似于高级

CASE表达式可以在SQL中实现if-then-else型的逻辑,而不必使用PL/SQL。CASE的工作方式与DECODE()类似,但应该使用CASE,因为它与ANSI兼容。
注意点:

  1、以CASE开头,以END结尾

  2、分支中WHEN后跟条件,THEN为显示结果

  3、ELSE为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加

  4、END后跟别名

  CASE有两种表达式:

  1.简单CASE表达式,使用表达式确定返回值.

  语法:

  CASE search_expression

  WHEN expression1 THEN result1

  WHEN expression2 THEN result2

  ...

  WHEN expressionN THEN resultN

  ELSE default_result

  END

  例:

  select product_id,product_type_id,

  case product_type_id

  when 1 then 'Book'

  when 2 then 'Video'

  when 3 then 'DVD'

  when 4 then 'CD'

  else 'Magazine'

  end

  from products

  结果:

  PRODUCT_ID PRODUCT_TYPE_ID CASEPROD

  ---------- --------------- --------

  1 1 Book

  2 1 Book

  3 2 Video

  4 2 Video

  5 2 Video

  6 2 Video

  7 3 DVD

  8 3 DVD

  9 4 CD

  10 4 CD

  11 4 CD

  12 Magazine

  12 rows selected.

  2.搜索CASE表达式,使用条件确定返回值.

  语法:

  CASE

  WHEN condition1 THEN result1

  WHEN condistion2 THEN result2

  ...

  WHEN condistionN THEN resultN

  ELSE default_result

  END

  例:

  select product_id,product_type_id,

  case

  when product_type_id=1 then 'Book'

  when product_type_id=2 then 'Video'

  when product_type_id=3 then 'DVD'

  when product_type_id=4 then 'CD'

  else 'Magazine'

  end

  from products

  结果与上相同.
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 浅析drop user与delete from mysql.user的区别
  • mysql prompt的用法详解
  • 如何使用索引提高查询速度
  • 深入mysql创建自定义函数与存储过程的详解
  • JDBC数据库的使用操作总结
  • MySQL查询优化:LIMIT 1避免全表扫描提高查询效率
  • MySQL与Oracle的语法区别详细对比
  • 有关mysql中ROW_COUNT()的小例子
  • MySQL 百万级分页优化(Mysql千万级快速分页)
  • 从创建数据库到存储过程与用户自定义函数的小感

相关文章

  • 2017-05-11MYSQL事件查看器使用介绍
  • 2017-05-11MYSQL基础之连接MYSQL、修改密码、添加用户
  • 2018-12-05解决oracle用户连接失败的解决方法
  • 2018-12-05MySQL主从同步加速 Transfer-- FAQ
  • 2018-12-05对MySQL配置参数 my.ini/my.cnf的详细解析
  • 2018-12-05mysql数据类型存储需求及如何选择正确的类型
  • 2018-12-05oracle sql 去重复记录不用distinct如何实现
  • 2018-12-05mysql-springjdbc 连接数据库,超过8小时没有连接,断开了与数据库的连接怎么办
  • 2018-12-05SQL优化基础 使用索引(一个小例子)
  • 2018-12-05虚拟机linux中装mysql数据库

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • oracle中left join和right join的区别浅谈
    • MySQL表名不区分大小写的设置方法
    • MYSQL神秘的HANDLER命令与实现方法_MySQL
    • mysql event事件调度器的图文代码详解
    • 世界杯猜想活动的各类榜单的SQL语句小结
    • mysql 中文乱码 解决方法集锦
    • Linux下自动备份MySQL的方法
    • Oracle数据库性能优化技术开发者网络Oracle
    • 怎样解决MySQL 5.0.16的乱码问题
    • MySQL中101个调试与优化技巧的分享

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有