浅析数据库case when 用法

背景

今天在做一个需求,大致就是根据卡的logo去匹配,卡片的主卡数量、附属卡数量、激活卡数量、未激活卡数量、销卡数量等。当时以为要写很多sql,后来问了下同事说可以用case when写一条sql就能搞定,当时那个开心啊就是这样的O(∩_∩)O哈哈~!所以今晚抽空好好补下case when的用法。

1、case when使用方法

Case具有两种格式。简单Case函数和Case搜索函数。

第一种格式简单case函数:
case 列名
when 条件值1 then 选项1
when 条件值2 then 选项2.......
else 默认值 end

第二种格式Case搜索函数:
case
when 列名= 条件值1 then 选项1
when 列名=条件值2 then 选项2.......
else 默认值 end


比较: 两种格式,可以实现相同的功能。
简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。还有一个需要注意的问题,Case函数只返回第一个符合条件的 值,剩下的Case部分将会被自动忽略。

由于今天电脑中数据库挂了,先不写例子。等在装好数据库补上。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,434评论 0 5
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,407评论 0 9
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,877评论 0 38
  • 1.简介 数据存储有哪些方式?电子表格,纸质文件,数据库。 那么究竟什么是关系型数据库? 目前对数据库的分类主要是...
    乔震阅读 1,762评论 0 2
  • 学生时代,老师每天都要求我们上课注意力要集中,做事要专心,但是小孩子嘛,注意力总是容易被一些其他的事情吸引到眼球,...
    思漠静思阅读 1,008评论 0 1