oracle语句case⽤法,oracleplsqlcase条件语句的⽤法
oracle/plsql case条件语句的⽤法
来源:互联⽹
作者:佚名
举个例子的英语时间:2013-04-24 12:38
本⽂章要介绍关于oracle/plsql case条件语句的⽤法,它和mysql mssql都差不多,好了费话不说多了需要的学同可以看看吧。css代码教程
小程序前端ui框架本⽂章要介绍关于oracle/plsql case条件语句的⽤法,它和mysql mssql都差不多,好了费话不说多了需要的学同可以看看吧。
语句语法
代码如下
复制代码
CASE  [ expression ]
WHEN condition_1 THEN result_1
WHEN condition_2 THEN result_2
...
WHEN condition_n THEN result_n
ELSE result
END
expression 可选的。它的价值,你⽐较的条件清单。 (即:condition_1,condition_2,... condition_n)
condition_1到condition_n都必须是相同的数据类型。条件评估中列出的顺序。⼀个条件是⼀旦发现是真实的,case语句将返回的结果和不评价任何进⼀步的条件。
result_1到result_n都必须是相同的数据类型。这是返回的值⼀个条件是,⼀旦发现是真的。
注意:
如果没有条件为真,那么case语句将返回在ELSE⼦句⾥的值。
如果省略了ELSE⼦句和任何条件发现是真的,那么case语句将返回NULL。
最多可以有255在case语句⽐较。时,每个...条款被认为是2⽐较。
Applies To:
Oracle 9i, Oracle 10g, Oracle 11g
实例
你可以使⽤case语句在SQL语句如下:(包括表达式⼦句)
代码如下mysql语句转oracle
复制代码
table_name,
CASE owner
WHEN 'SYS' THEN 'The owner is SYS'
WHEN 'SYSTEM' THEN 'The owner is SYSTEM'
ELSE 'The owner is another value'
END
from all_tables;
或者你可以写SQL语句,使⽤这样的情况下声明:(省略了表达式⼦句)
代码如下
复制代码
select table_name,
CASE
switchcase合并
WHEN owner='SYS' THEN 'The owner is SYS'
WHEN owner='SYSTEM' THEN 'The owner is SYSTEM'
ELSE 'The owner is another value'
END
from all_tables;
上述两个案例语句以下的IF - THEN- ELSE语句是等价的:
代码如下
inarray
复制代码
IF owner = 'SYS' THEN
result := 'The owner is SYS';
ELSIF owner = 'SYSTEM' THEN
result := 'The owner is SYSTEM'';
ELSE
result := 'The owner is another value';
END IF;
case语句会⽐较每⼀位业主的价值,⼀个接⼀个。
需要注意的⼀点是,在case语句的else⼦句是可选的的。你可以省略。让我们看看上⾯的SQL语句与ELSE⼦句省略。您的SQL语句如下所⽰:
代码如下
复制代码
select table_name,
CASE owner
WHEN 'SYS' THEN 'The owner is SYS'
WHEN 'SYSTEM' THEN 'The owner is SYSTEM'
END
from all_tables;
实例
下⾯就是⼀个例⼦,演⽰了如何使⽤case语句来⽐较不同条件下:代码如下
复制代码
select
CASE
WHEN a < b THEN 'hello'
WHEN d < e THEN 'goodbye'
END
from suppliers;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。