Oracle中Case when 的用法,使用表达式确定返回值.
1.1、语法:
CASE search_expression
WHEN expression1 THEN result1
WHEN expression2 THEN result2
WHEN expressionN THEN resultN
ELSE default_result
1.2、例子:
CASE country
WHEN '中国' THEN '亚洲'
WHEN '印度' THEN '亚洲'
WHEN '日本' THEN '亚洲'
WHEN '美国' THEN '北美洲'
WHEN '加拿大' THEN '北美洲'
WHEN '墨西哥' THEN '北美洲'
ELSE '其他' END
Oracle中Case when 的用法,使用条件确定返回值.
2.1、语法:
CASE
WHEN condition1 THEN result1
WHEN condistion2 THEN result2
...
WHEN condistionN THEN resultN
ELSE default_result
END
2.2、例子:
select product_id,product_type_id,
case
when product_type_id=1 then 'Book'
when product_type_id=2 then 'Video'
when product_type_id=3 then 'DVD'
when product_type_id=4 then 'CD'
else 'Magazine'
end
from products
这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制
Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。