SQL CASE表达式(CASE···WHEN)

SQL中,CASE...WHEN表达式用于在查询结果中根据条件返回不同的值。它的语法通常如下:

复制代码
sql 复制代码
CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE default_result
END

下面是一个简单的例子,演示了如何使用CASE...WHEN表达式:

复制代码
sql 复制代码
SELECT 
    student_name,
    CASE
        WHEN score >= 90 THEN 'A'
        WHEN score >= 80 THEN 'B'
        WHEN score >= 70 THEN 'C'
        WHEN score >= 60 THEN 'D'
        ELSE 'F'
    END AS grade
FROM 
    student_scores;

在这个例子中,根据学生的分数来判断其等级(A、B、C、D、F),并将结果作为新的列返回。如果学生的分数大于等于90,那么他们的等级是'A',如果分数在80到90之间,等级是'B',以此类推。最后一个ELSE子句指定了默认的等级为'F'。

CASE...WHEN表达式可以嵌套使用,也可以在SELECTWHEREORDER BY等语句中使用,用于根据不同的条件生成不同的结果。这使得它成为SQL中非常灵活和强大的工具之一。

相关推荐
学Linux的语莫7 分钟前
skills的使用
java·数据库·python
码云数智-园园8 分钟前
MySQL 性能调优实战:高效处理 ORDER BY 与 GROUP BY 查询
数据库·mysql
大模型玩家七七11 分钟前
关系记忆不是越完整越好:chunk size 的隐性代价
java·前端·数据库·人工智能·深度学习·算法·oracle
全栈前端老曹13 分钟前
【Redis】Pipeline 与性能优化——批量命令处理、提升吞吐量、减少网络延迟
前端·网络·数据库·redis·缓存·性能优化·全栈
知识分享小能手17 分钟前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019 创建和使用索引 — 语法知识点及使用方法详解(12)
数据库·学习·sqlserver
一 乐38 分钟前
林业资源管理|基于java + vue林业资源管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·林业资源管理系统
l1t38 分钟前
DeepSeek总结的PostgreSQL 18 EXPLAIN 中新增的 Index Searches
数据库·postgresql
g***279941 分钟前
使用 Canal 实时从 MySql 向其它库同步数据
数据库·mysql
u***357443 分钟前
对基因列表中批量的基因进行GO和KEGG注释
开发语言·数据库·golang
lipiaoshuigood43 分钟前
微服务生态组件之Spring Cloud LoadBalancer详解和源码分析
java·spring cloud·微服务