MySQL语句 | 条件函数IF/CASE/COALESCE的使用

文章目录

      • 1. `IF()` 函数
      • 2. `CASE` 表达式
        • 简单 CASE 表达式
        • 搜索 CASE 表达式
      • 3. `COALESCE()` 函数

在MySQL中,条件函数用于在查询中根据特定条件来返回不同的结果。常见的条件函数包括 IF()CASE

1. IF() 函数

IF() 函数用于在满足某个条件时返回一个值,否则返回另一个值。

SELECT name, IF(score > 50, 'Pass', 'Fail') AS result
FROM students;

在上面的示例中,如果学生的分数大于50,则返回 ‘Pass’,否则返回 ‘Fail’。

2. CASE 表达式

CASE 表达式允许在查询中实现更复杂的条件逻辑。

简单 CASE 表达式
SELECT name,
       CASE score
           WHEN 100 THEN 'Perfect'
           WHEN 90 THEN 'Excellent'
           WHEN 80 THEN 'Very Good'
           ELSE 'Pass'
       END AS result
FROM students;

在上面的示例中,根据分数返回不同的结果。

搜索 CASE 表达式
SELECT 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 students;

在上面的示例中,根据分数范围返回等级。

3. COALESCE() 函数

COALESCE() 函数用于返回参数列表中的第一个非空值。

SELECT name, COALESCE(score, 0) AS score
FROM students;

在上面的示例中,如果分数为空,则返回0。

这些是一些常见的条件函数和表达式,在MySQL中可用于根据特定条件返回不同的结果。

你可能感兴趣的:(数据库,mysql,数据库)