
时,if
flag>5
已经满足条件了,直接v_value
:=1,不会继续判断了。然后就调到end
if。可败稿以按察租孝f9调试,型首不信一步步看它的执行过程。
问题2:if
v_null=null,不是这样写,是if
v_null
is
null
,就会输出888啦。
你的if逻辑有问题:当输入37的时候
flag>5
肯定结果是1,不会进入else了。
你可以再第一行加上flag<毕春=10
然后试试。
当然你下面的逻辑还有问题,你手镇耐自己去琢磨琢磨,根据你的需求慢慢改吧!
if
flag>5
and
flag<=10
then
v_value
:=1
elsif
flag>10
then
v_value
:=2
elsif
flag<20
then
v_value
:=3
elsif
flag<39
then
v_value
:=4
else
v_value
:=5
end
if
实在搞不懂逻辑,可旅纳以用switch……case……这样清晰些。
oracle储存过程中,if条件为某变量御族不等于1,怎么写oracle存储亮橡过程镇键弊中的if条件判断的写法:
比如:
temp
varchar2(10)
:=
'10000'
if
temp
<>
'10000'
then
insert
into
...
else
update
.......
end
if
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)