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


    CASE… WHEN

    SELECT…CASE…WHEN…THEN…是在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;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    解释:

    • 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子句的条件可以是基于列的比较、函数操作、常量等,

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

    例如

    SELECT name, score,
      CASE
        WHEN score >= 90 THEN '优秀'
        WHEN score >= 80 THEN '良好'
        WHEN score >= 70 THEN '及格'
        ELSE '不及格'
      END AS grade
    FROM students;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    将生成以下三列:

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

  • 相关阅读:
    C语言:char与unsigned char类型数据的范围
    【Vue3】动态 class 类
    科技型中小企业认定条件和好处
    跳表C语言
    vue3的生命周期
    87.有效的完全平方数(力扣)
    [开源]一款面向普通人的AI桌面APP工具箱简单方便使用
    Go 语言图片处理简明教程
    mysql迁移后验证数据一致性
    学习笔记—tomcat调优
  • 原文地址:https://blog.csdn.net/qq_44810930/article/details/133867921