oracle case when的用法
时间: 2023-12-02 18:01:16 浏览: 97
复习oracle
Oracle中的CASE WHEN语句是一种条件表达式,用于根据给定条件在结果集中返回不同的值。它的使用非常灵活,常用于在查询或更改数据时根据不同的条件执行不同的操作。
CASE WHEN语句的基本语法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
…
ELSE result
END
首先,CASE关键字引导CASE表达式的开始。然后,根据需要,可以使用任意数量的WHEN子句,每个WHEN子句后面跟随一个条件表达式,CONDITION,用于判断是否执行该分支。如果条件为真,则返回对应的RESULT。
ELSE子句是可选的,用于定义当所有WHEN子句的条件都为假时的默认返回值。
CASE WHEN语句也可以嵌套使用,这样可以构建更复杂的逻辑。
下面是一个例子,说明了CASE WHEN的用法:
SELECT
customer_id,
order_amount,
CASE
WHEN order_amount > 1000 THEN 'High'
WHEN order_amount > 500 THEN 'Medium'
ELSE 'Low'
END AS order_priority
FROM
orders;
在这个例子中,根据订单金额,根据不同的条件,将订单的优先级分为High、Medium和Low。如果订单金额大于1000,返回'High',如果大于500,返回'Medium',否则返回'Low'。
总之,Oracle中的CASE WHEN语句是一种非常有用的条件表达式,它允许根据不同的条件返回不同的结果,使查询结果更加灵活和可读。
阅读全文