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

本教程操作环境: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当作一个运算结果的表达式就可以了。
举例:
在整本书中我们所涉及许多的Flex框架源码,但为了简洁,我们不总是显示所指的代码。当你阅读这本书时,要求你打开Flex Builder,或能够访问Flex3框架的源码,跟随着我们所讨论源码是怎么工作及为什么这样做。 如果你跟着阅读源码,请注意,我们经常跳过功能或者具体的代码,以便我们可以对应当前的主题。这样能防止我们远离当前的主题,主要是讲解代码的微妙之处。这并不是说那些代码的作用不重要,而是那些代码处理特别的案例,防止潜在的错误或在生命周期的后面来处理,只是我们当前没有讨论它。有需要的朋友可以下载看看

2.搜索case语句
语法:
case when boolean then return value … when boolean then return value else retur nvalue end
举例:

简单case和搜索case之间的区别:
简单case只能是when后面的表达式完全匹配case后的表达式,相当于 =,所以也不能匹配null。
searched case可以作为比较条件,那么可以使用like、!=、between …and、
推荐教程:《Oracle视频教程》









