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中非常灵活和强大的工具之一。

相关推荐
~光~~14 分钟前
【嵌入式linux学习_OV8858 bring up】L2_V4L2与Ov8858
linux·数据库·学习
菜地里的小菜鸟25 分钟前
达梦数据库备份与恢复
数据库·达梦·达梦数据库备份与恢复
520拼好饭被践踏37 分钟前
JAVA+Agent学习day26
java·开发语言·数据结构·学习·agent
郝学胜-神的一滴1 小时前
力扣 692:巧用小顶堆高效求解前K个高频单词
java·数据结构·python·程序人生·算法·leetcode·职场和发展
zzzll11111 小时前
SpringBoot 入门与实践指南
java·spring boot·后端
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第211题】【10_网络协议篇】第2题:说一下什么是 HTTP 协议?
java·网络协议·http·https·web通信
caishenzhibiao1 小时前
缠论画线主图 同花顺期货通指标
java·c语言·c#
晨曦中的暮雨2 小时前
Redis 有哪些常见数据结构?它们的底层实现和使用场景是什么?
java·后端·八股
男孩李2 小时前
浅谈Linux的last命令
java·linux·服务器
豆瓣鸡2 小时前
算法日记 - Day5
java·算法