在SQL中,CASE WHEN是一种条件表达式,用于根据给定的条件进行条件判断和返回不同的结果。
![sql中casewhen的用法](/d/file/2023090112/mysql1253621-5.webp)
在SQL中,CASE WHEN语句用于根据给定的条件进行条件判断,并返回不同的结果。它的用法如下:
1、简单CASE WHEN用法
CASE expression WHEN value1 THEN result1 WHEN value2 THEN result2 ... ELSE default_resultEND
在上述语法中,expression是要进行条件判断的表达式,value1、value2等是要比较的值。如果expression与某个value相等,则返回相应的result;如果没有条件匹配,则返回default_result。
2、搜索CASE WHEN用法
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE default_resultEND
在上述语法中,condition1、condition2等是用于进行条件判断的表达式或逻辑条件。根据条件的结果,可以返回相应的result1、result2等值或表达式。如果没有任何条件匹配,则返回default_result。
CASE WHEN语句可以在SELECT语句中作为一个表达式使用,也可以用于UPDATE语句、WHERE子句、ORDER BY子句等。它在进行数据转换、分类、逻辑判断等方面非常有用。
以下是一些示例展示了CASE WHEN语句的用法:
-- 示例1:根据分数进行等级划分SELECT name, score, CASE WHEN score >= 90 THEN 'A' WHEN score >= 80 THEN 'B' WHEN score >= 70 THEN 'C' ELSE 'D' END AS gradeFROM students;-- 示例2:根据条件返回不同结果SELECT product_name, quantity, CASE WHEN quantity > 1000 THEN 'High Demand' WHEN quantity > 500 THEN 'Medium Demand' ELSE 'Low Demand' END AS demandFROM products;
这些示例展示了如何根据条件进行条件判断,并返回不同的结果。您可以根据实际需求和具体的条件设置,灵活使用CASE WHEN语句来满足您的查询和操作要求。