oracle的if语句采用decode函数.
表示如果value 等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else.
Oracle数据库是对标准sql语言的过程化扩展,所以呢产生了pl/sql语言.其中的if语句大量使用使得程序模块化的功能方便实用.现在要讨论的是if语句的基本使用方法.
连接数据库
设置环境变量
SQL set serveroutput on
定义两个字符串变量,然后赋值,接着使用if......then语句比较两个字符串变量的长度,并输出比较结果.
declare
a varchar(10);
b varchar(10);
begin
a:='beijing';
b:='guangdong';
if length(a)length(b)
then dbms_output.put_line('ab');
end if;
end;
a number(10);
a:=x;
then dbms_output.put_line('可以申请退休');
else dbms_output.put_line('不可以申请退休');
制定一个月份数值,然后使用if......then......elsif语句判断它所属的季节,并输出季节信息.
mon number(10);
mon:=x;
then dbms_output.put_line('春节');
制定一个季度数值,然后使用case语句判断它所包含的月份信息并输出.
ss number(10);
ss:=x;
case
end case;
①.、创建测试表,
insert into test_isnum values(1,'a');
commit;
select t.*,
? ?case
? ? ?when not regexp_like(value, '\D') then
? ? ? '是'
? ? ?else
? ? ? '否'
? ?end as "是否数字"
from test_isnum t;
一个多条件判断的sql:
select?
oper.opid,
oper.user_name,
oper.user_host,
case?
when?oper.oper_type?=?1?then?'System?Manager'?
end?case,
when?oper.oper_object_type?=?1?then?'User'
end?case
from?esb_log_user_oper?oper;
是存储过程里面的 IF/ELSE ? 还是简单的 DECODE ?
SQL DECLARE
①.0 ELSE
①.1 dbms_output.put_line( '100-' );
①.00
PL/SQL procedure successfully completed.
SQL SELECT
ITEN MONEY
------ ----------
SELECT
distinct?id,state,name
FROM
table1?main
WHERE
NOT?EXISTS(?select?1?FROM?table1?sub?where?main.id=sub.id?AND?main.statesub.state);
未经测试...纯属手写,,如果以自己多年经验来说的话..这段话应该不会有多大问题...希望你自己仔细测试之后能够提出宝贵意见!!!
以上就是土嘎嘎小编为大家整理的oracle怎么写判断相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!