相关推荐recommended
SQL中的单条件判断函数IF,和多条件判断CASE WHEN的用法
作者:mmseoamin日期:2023-12-18

一、单条件判断IF

在SQL中,条件判断函数IF用于根据指定的条件返回不同的值。

语法:

IF(condition, value_if_true, value_if_false)

参数说明:

  • condition:要判断的条件。
  • value_if_true:如果条件为真,则返回的值。
  • value_if_false:如果条件为假,则返回的值。

    示例:

    假设有如下名为studensts的表,包含id、name和score字段:

    SQL中的单条件判断函数IF,和多条件判断CASE WHEN的用法,在这里插入图片描述,第1张

    CREATE TABLE `students` (
      `id` int(11) NOT NULL,
      `name` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL,
      `score` int(11) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
    

    我们想根据学生的分数判断是否及格,并返回相应的结果。

    SELECT id, name, IF(score >= 60, '及格', '不及格') AS result 
    FROM students;
    

    以上查询会返回一个结果集,其中result列将显示每个学生的及格或不及格的结果。

    SQL中的单条件判断函数IF,和多条件判断CASE WHEN的用法,在这里插入图片描述,第2张

    二、多条件判断CASE WHEN

    在SQL中,条件判断函数CASE WHEN用于在查询中根据特定条件返回不同的结果。

    语法:

    CASE WHEN condition1 THEN result1
         WHEN condition2 THEN result2
         ...
         ELSE resultN
    END
    

    参数说明: