oracle怎么写IF语句?

oracle怎么写IF语句?,第1张

如果是 SQL 语句里面使用。\x0d\x0a\x0d\x0a使用 DECODE 或者 CASE WHEN\x0d\x0a\x0d\x0aDECODE 的用法就是\x0d\x0aDECODE(abc, 50, 'A', 'B')\x0d\x0a\x0d\x0aCASE WHEN 的用法就是\x0d\x0aCASE WHEN abc=50 THEN 'AELSE 'BEND\x0d\x0a\x0d\x0a如果是在存储过程里面的话,就是简单的 IF/ELSE 了 \x0d\x0a\x0d\x0aSQL 语句的话,就是\x0d\x0a\x0d\x0aSELECT\x0d\x0a abc, DECODE(abc, 50, 'A', 'B')\x0d\x0aFROM\x0d\x0a 表

oracle的if语句采用decode函数

DECODE(value,if1,then1,if2,then2,if3,then3,...,else)

表示如果value 等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。

Oracle数据库是对标准sql语言的过程化扩展,因此产生了pl/sql语言。其中的if语句大量使用使得程序模块化的功能方便实用。现在要讨论的是if语句的基本使用方法。

连接数据库

请输入用户名:  scott/123456

设置环境变量

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('a>b')

end if

end

过if……then……else语句实现只有年龄大于等于56岁,才可以申请退休,否则程序会提示不可以申请退休。

declare

a number(10)

begin

a:=&x

if a>=56

then dbms_output.put_line('可以申请退休')

else dbms_output.put_line('不可以申请退休')

end if

end

制定一个月份数值,然后使用if……then……elsif语句判断它所属的季节,并输出季节信息。

declare

mon number(10)

begin

mon:=&x

if mon=3 or mon=4 or mon=5

then dbms_output.put_line('春节')

elsif mon=6 or mon=7 or mon=8 then dbms_output.put_line('夏季')

elsif mon=9 or mon=10 or mon=11 then dbms_output.put_line('秋季')

elsif mon=12 or mon=1 or mon=2 then dbms_output.put_line('冬季')

end if

end

制定一个季度数值,然后使用case语句判断它所包含的月份信息并输出。

declare

ss number(10)

begin

ss:=&x

case

when ss=1 then dbms_output.put_line('包含月份3,4,5')

when ss=2 then dbms_output.put_line('包含月份6,7,8')

when ss=3 then dbms_output.put_line('包含月份9,10,11')

when ss=4 then dbms_output.put_line('包含月份12,1,2')

end case

end

BEGIN

IF (1 = 1) THEN

DBMS_OUTPUT.PUT_LINE('这是第一层的if')

IF (1 = 1) THEN

DBMS_OUTPUT.PUT_LINE('这是第二层的if')

END IF

ELSE

DBMS_OUTPUT.PUT_LINE('这是第一层的else')

END IF

END

这个是我测试的 不会被第一个if截断 是不是你脚本有问题?


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/7903110.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存