SQL语句–CASE函数写法的简单举例,及应用

---case函数的基本结构:case when...then...else...    ----可以写也可以不写,按实际需求end

【举个栗子_1】

eg1:
--我想实现的效果:
--当ID为1时,输出结果显示“财务部”、当ID为2时,输出结果显示“研发部”、当ID为3时,输出结果显示“人力资源部”
SELECT DepartmentID,CASE WHEN DepartmentID=1 THEN '财务部' WHEN DepartmentID=2 THEN '研发部' WHEN DepartmentID=3 THEN '人力资源部' END
FROM Department

为了明显看出效果,加了一列ID,以检验结果的正确性,
下图为执行语句后返回的结果:

【举个栗子_2】

eg2:
---在我的数据库中,这个表里只存在3个部门,
---所以当ID为1时,输出结果显示“财务部”、当ID为2时,输出结果显示“研发部”、
---当ID不是1也不是2时(即ID为3),输出结果显示“人力资源部”
SELECT DepartmentID,CASE WHEN DepartmentID=1 THEN '财务部' WHEN DepartmentID=2 THEN '研发部' ELSE  '人力资源部' END
FROM Department

下图为执行语句后返回的结果:

可看出与【eg1】中的返回结果一致

【举个栗子_3】
当select中有case函数,但需要进行分组时,把select中的那段case函数直接复制到group by 位置即可

eg3:
SELECT DepartmentID,CASE WHEN DepartmentID=1 THEN '财务部' WHEN DepartmentID=2 THEN '研发部' ELSE  '人力资源部' END
FROM Department
GROUP BY DepartmentID, CASE WHEN DepartmentID=1 THEN '财务部' WHEN DepartmentID=2 THEN '研发部' ELSE  '人力资源部' END

下图为执行语句后返回的结果:

【举个栗子_4】

eg4:
SELECT DepartmentID,CASE WHEN DepartmentID<2 THEN '财务部' WHEN DepartmentID>2 THEN '人力资源部'              END
FROM Department

返回结果:
当ID<2时,输出结果显示“财务部”、当ID>2时,输出结果显示“人力资源部”、
但没有说明当ID=2时的输出情况 ,所以输出结果显示为NULL

链接:关于CASE WHEN 需要注意的事项

SQL语句--CASE函数写法的简单举例,及应用相关推荐

  1. SQL语句case函数

    case函数被习惯性的称为流程控制函数 其主要应用有以下两种 1.简单case函数 枚举这个字段(或者是该字段的函数)所有可能的值* 形式为 CASE <col_name>WHEN < ...

  2. 三分钟搞懂SQL的Case函数

    文章标题 前言 一: 使用语法 作用一: 结合分组统计数据 作用二: 分条件更新字段值 作用三: 检查表中字段值是否一致 作用四: 行转列(重点-面试常见) 五:普通case函数和搜索case函数的区 ...

  3. 为什么使用@tablename起别名产生的sql语句不能用_10个简单步骤,完全理解SQL

    多年前收藏在笔记中的一篇文章,今天偶然翻出,重读了一遍,依然大有收获.分享出来,大家一起探讨. 以本文是为了以下读者而特地编写的: 1. 在工作中会用到 SQL 但是对它并不完全了解的人. 2. 能够 ...

  4. oracle中执行动态sql语句吗,oracle中有没有可动态执行sql语句的函数

    oracle中有没有可动态执行sql语句的函数 关注:233  答案:2  手机版 解决时间 2021-03-05 15:53 提问者祗剩寂寞 2021-03-04 22:38 oracle中有没有可 ...

  5. 第五篇、常用的SQL语句和函数介绍

    简介: 在使用到sqlite3的时候,常常需要写一些SQL语句,现将常用到的部分语句稍微总结以下,由于个人习惯,关键字用大写. 附: /*简单约束*/ CREATE TABLE IF NOT EXIS ...

  6. php 自带sql防注入函数,php 最简单sql防注入函数与方法_PHP教程

    mysql教程_real_escape_string - 转义 SQL 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集. 但是注意:该函数并不转义 % 和 _.另外,最好不要对整条sql语句 ...

  7. MySQL学习-SQL语句的分类与MySQL简单查询

    1.SQL语句的分类 学习MySQL主要还是学习通用的SQL语句,那么SQL语句包括增删改查,SQL语句怎么分类呢?   DQL(数据查询语言): 查询语句,凡是select语句都是DQL.   DM ...

  8. Sql语句Convert函数获取时间格式的一种用法

    Sql语句查询某种时间格式  通过convert函数处理查询结果 这是函数的参数类型: eg: select OutPH,CONVERT(Time(0),Time,8) as Time from [G ...

  9. 详解大中小数据常用数据库的SQL语句、函数以及常见优化

    本篇文章主要介绍目前我在目前项目中使用过的一些数据库的用法,像中小型数据常用的关系型数据库Sql Server,大数据常用的数据库Hive,Hbase. 文章目录 SQL 你必须知道的 SQL网站 关 ...

最新文章

  1. STM32中printf重定向到串口
  2. 基于matlab_simulink汽车三自由度模型仿真
  3. 屏蔽朋友圈的第一天的感悟
  4. 四个好用却可能不为人所熟知的Pandas函数,建议收藏!!!
  5. locate用主动还是被动_用英文形容地理位置lie、sit、locate、situate 怎样区别?
  6. winmerge 注意事项
  7. wordpress友联_Wordpress 友情链接页面终极版 – Fatesinger
  8. K2评分方法理解实例
  9. Android系统 (150)---Android 开发者工具
  10. 【clickhouse】MergeTree storage require data path INCOORRECT_FILE_NAME
  11. 零基础转行Web前端开发自学靠谱吗?菜鸟学习前端的方法分享
  12. 前端处理后台返回的流数据
  13. nohup执行的jar 怎么kill_使用Shell脚本如何启动/停止Java的jar程序
  14. 10-4 linux可视化界面卡住问题等
  15. win10系统迁移到新固态硬盘,win10系统备份还原
  16. case when 嵌套
  17. 【有奖倒计时】带你走进AI应用创新大赛十强背后的故事!
  18. mysql implode_php implode函数应用
  19. 锐龙R3 2200G和Intel i3-8100选哪个好
  20. 如何通过Gitalk评论插件,5分钟为你的博客快速集成评论功能

热门文章

  1. ubuntu18.04使用蓝牙适配器
  2. java敏感词关键词过滤
  3. 超能陆战队大白html代码,HTML加CSS技术打造超能陆战队的大白
  4. I.MX6ULL开发板基于阿里云项目实战 3 :阿里云iot-SDK 移植到arm开发板
  5. 陕西科技大学计算机专业课表,陕西科技大学教务管理系统入口:http://jwc.www.sust.edu.cn/...
  6. androidtv gms包_Android之GMS自我总结
  7. python余数不等于的符号_有乐 这些符号如此重要,不知道就等于“白练琴”
  8. js-16正则表达式
  9. python求梯形面积_pythonocc 求一条直线与一个梯形的交点的横坐标
  10. bzoj2215[POI2011]Conspiracy