[SQL] SELECT...CASE...WHEN...THEN...是在SQL中用于进行条件判断和赋值的语句

CASE... WHEN

SELECT...CASE...WHEN...THEN...是在SQL中用于进行条件判断和赋值的语句。

以下是一个代码示例:

sql 复制代码
SELECT 
    column1,
    column2,
    CASE 
        WHEN condition1 THEN result1
        WHEN condition2 THEN result2
        ...
        WHEN conditionN THEN resultN
        ELSE result
    END AS new_column
FROM 
    table_name;

解释:

  • SELECT:表示要选取的字段或表达式。
  • column1, column2:表示要选取的原始字段。
  • CASE:表示开始一个CASE语句块。
  • WHEN condition1 THEN result1:表示当condition1条件满足时,将new_column列赋值为result1。
  • WHEN condition2 THEN result2:表示当condition2条件满足时,将new_column列赋值为result2。
  • ELSE result:表示当上述所有条件都不满足时,默认将new_column列赋值为result。
  • END AS new_column:表示结束CASE语句块,并将赋值后的结果命名为new_column
  • FROM table_name:表示从指定的表中进行查询操作。

需要注意的是,WHEN子句的条件可以是基于列的比较、函数操作、常量等,

根据具体需求来编写条件判断和赋值逻辑。

例如

sql 复制代码
SELECT name, score,
  CASE
    WHEN score >= 90 THEN '优秀'
    WHEN score >= 80 THEN '良好'
    WHEN score >= 70 THEN '及格'
    ELSE '不及格'
  END AS grade
FROM students;

将生成以下三列:

  • 学生的姓名 name
  • 分数 score
  • 根据分数计算出的等级 grade

相关推荐
wjhx8 分钟前
QT中对蓝牙权限的申请,整理一下
java·数据库·qt
冰暮流星19 分钟前
javascript之二重循环练习
开发语言·javascript·数据库
万岳科技系统开发44 分钟前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
冉冰学姐1 小时前
SSM智慧社区管理系统jby69(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·管理系统·智慧社区·ssm 框架
杨超越luckly1 小时前
HTML应用指南:利用GET请求获取中国500强企业名单,揭秘企业增长、分化与转型的新常态
前端·数据库·html·可视化·中国500强
Elastic 中国社区官方博客1 小时前
Elasticsearch:Workflows 介绍 - 9.3
大数据·数据库·人工智能·elasticsearch·ai·全文检索
仍然.1 小时前
MYSQL--- 聚合查询,分组查询和联合查询
数据库
一 乐1 小时前
校园二手交易|基于springboot + vue校园二手交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
啦啦啦_99991 小时前
Redis-0-业务逻辑
数据库·redis·缓存
证榜样呀2 小时前
2026 中专大数据技术专业可考的证书有哪些,必看!
大数据·sql