sql case when和if
时间: 2023-11-14 12:02:39 浏览: 38
SQL中的CASE WHEN和IF语句都是用于根据条件进行条件判断和分支处理的语句。
CASE WHEN语句用于根据不同的条件值返回不同的结果。它的基本语法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
其中,condition1、condition2等表示条件表达式,result1、result2等表示条件成立时返回的结果。如果所有的条件都不成立,则返回ELSE后的结果。
IF语句用于根据给定的条件判断是否执行某段代码。它的基本语法如下:
IF condition THEN
code block
ELSE
code block
END IF
其中,condition表示条件表达式,如果条件成立,则执行IF后的代码块,否则执行ELSE后的代码块。
举个例子来说明:
假设我们有一个Employees表,包含了员工的信息,我们要根据员工的年龄判断其所在年龄段:
SELECT EmployeeName,
CASE
WHEN Age < 20 THEN '20岁以下'
WHEN Age >= 20 AND Age < 30 THEN '20-29岁'
WHEN Age >= 30 AND Age < 40 THEN '30-39岁'
ELSE '40岁以上'
END AS AgeRange
FROM Employees
以上代码中,根据不同的年龄范围,返回相应的年龄段。