oracle中case怎么用

oracle中,case语句用于把表达式结果同提供的几个可预见的结果比较,如果比较成功,则执行对应的语句序列,语法为“CASE 表达式 WHEN 表达式结果1 THEN 执行项[WHEN 表达式结果2 THEN 执行项]...”。

oracle中case怎么用

本教程操作环境:windows10系统、Oracle 12c版、Dell G3电脑。

oracle中case怎么用

该语句可以把表达式结果同提供的几个可预见的结果作比较,如果比较成功,则执行对应的语句序列,语法为“CASE 表达式 WHEN 表达式结果1 THEN 执行项[WHEN 表达式结果2 THEN 执行项]...”。

oracle中有case语句

case语句可以分为两种类型:

一种是简单的case语句,它给出一个表达式,并把表达式结果同提供的几个可预见的结果作比较,如果比较成功,则执行对应的语句序列。

另一种是搜索式的case语句。它会提供多个布尔表达式,然后选择第一个为true的表达式,执行对应的脚本。

1.简单case语句

语法:

case exp when comexp then returnvalue
…
when comexp then returnvalue
else returnvalue
end

case到end之间相当于一个具体的值,可以做运算,取别名,嵌套case 等等。

只要把case到end当作一个运算结果的表达式就可以了。

举例:

24.png

2.搜索case语句

语法:

case when boolean then return value
…
when boolean then return value
else retur nvalue
end

举例:

25.png

简单case和搜索case之间的区别:

  • 简单case只能是when后面的表达式完全匹配case后的表达式,相当于 =,所以也不能匹配null。

  • searched case可以作为比较条件,那么可以使用like、!=、between …and、<、=、is null、is not null等,比简单case的使用更加广泛,完全可以替代简单case。

推荐教程:《Oracle视频教程》

以上就是oracle中case怎么用的详细内容,更多请关注其它相关文章!