温馨提示×

MySQL 的CASE WHEN 语句使用说明

小云
106
2023-08-17 13:22:53
栏目: 云计算

在MySQL中,CASE WHEN语句用于对一系列条件进行判断,并根据不同的条件返回不同的结果。

语法如下:

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

其中,condition1condition2等是条件表达式,result1result2等是相应条件满足时返回的结果。ELSE子句是可选的,用于处理条件都不满足时的默认结果。

举例来说,假设有一个名为orders的表,其中包含customer_idtotal_amount两个列。我们希望根据total_amount的值判断订单的类型,并返回对应的结果。可以使用CASE WHEN语句来实现:

SELECT customer_id, total_amount,
CASE
WHEN total_amount > 1000 THEN '大额订单'
WHEN total_amount > 500 THEN '中额订单'
ELSE '小额订单'
END AS order_type
FROM orders;

通过执行上述查询,将会返回一个包含customer_idtotal_amountorder_type三个列的结果集。order_type列将根据total_amount的值进行判断,并返回对应的订单类型。

需要注意的是,在CASE WHEN语句中,条件是按顺序依次判断的。一旦某个条件的结果为真,则返回对应的结果,并且后面的条件将不再判断。如果没有任何条件满足,则返回ELSE子句中的结果。

0