当前位置:首页 > 行业动态 > 正文

mysql中case when语句

MySQL中的CASE WHEN语句用于在查询中进行条件判断,它是一种控制流函数,允许你根据一个或多个条件执行不同的操作,CASE WHEN语句的基本语法如下:

mysql中case when语句  第1张

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE result
END;

在这个语法中,你可以使用任意数量的WHEN子句来定义条件,当满足某个条件时,将返回对应的结果,如果没有满足任何条件,可以使用ELSE子句指定一个默认结果,如果省略ELSE子句,且没有满足任何条件,CASE语句将返回NULL。

下面是一个使用CASE WHEN语句的示例:

假设我们有一个名为employees的表,其中包含以下列:id(员工ID)、name(员工姓名)、salary(员工薪水)。

我们想要查询员工的姓名和薪水等级,薪水等级分为三档:低(<=3000)、中(>3000且<=6000)、高(>6000),我们可以使用CASE WHEN语句来实现这个需求:

SELECT name,
       CASE
           WHEN salary <= 3000 THEN '低'
           WHEN salary > 3000 AND salary <= 6000 THEN '中'
           ELSE '高'
       END AS salary_level
FROM employees;

这个查询将返回员工的姓名和薪水等级。

name salary_level
张三
李四
王五

你还可以在CASE WHEN语句中使用其他SQL表达式或函数,你可以使用IF函数来实现相同的功能:

SELECT name,
       IF(salary <= 3000, '低', IF(salary > 3000 AND salary <= 6000, '中', '高')) AS salary_level
FROM employees;

MySQL中的CASE WHEN语句是一种非常强大的工具,可以帮助你在查询中进行条件判断,通过使用CASE WHEN语句,你可以轻松地实现复杂的逻辑和计算。

0