oracle怎么写IF语句?

举例比如说,如果项目abc对应有很多值,只要里面有一个值等于50,则输出A。否则输出B结果输出abc和结果A或者B表V的abc列对应的d列有“很多”值... 举例比如说,如果项目abc对应有很多值,只要里面有一个值等于50,则输出A。
否则输出B
结果输出abc和结果A或者B
表V的abc列对应的d列有“很多”值
展开
 我来答
woshidaniel
推荐于2017-09-16 · TA获得超过9240个赞
知道小有建树答主
回答量:1760
采纳率:96%
帮助的人:950万
展开全部

oracle的if语句采碧咐慎用decode函数

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

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

示例:悔敬

比如,有个if语句如下
if(a==1){//如果a等于1,返回2,否则返回3
   return 2;
}else{
   return 3;
}
翻译成DECODE如下
DECODE(a,1,2,3)
wangzhiqing999
推荐于2018-09-28 · TA获得超过1.6万个赞
知道大有可为答主
回答量:7048
采纳率:100%
帮助的人:3318万
展开全部
如果仔缓是 SQL 语句里面使用。

使用 DECODE 或者 CASE WHEN

DECODE 的用法就桥戚戚是
DECODE(abc, 50, 'A', 'B')

CASE WHEN 的用法就是
CASE WHEN abc=50 THEN 'A' ELSE 'B' END

如果是在存储过程里面的话,就是简单的 IF/ELSE 了

SQL 语句的敏陵话,就是

SELECT
abc, DECODE(abc, 50, 'A', 'B')
FROM
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友009ed56
推荐于2017-09-26 · TA获得超过128个赞
知道答主
回答量:78
采纳率:0%
帮助的人:79.9万
展开全部
这才是你想要做敏高得结果。
SELECT abc,
'A'拿搜
FROM table_name
WHERE abc LIKE '%50%'
UNION ALL
SELECT abc,
'B'
FROM table_name
WHERE abc NOT LIKE '纯尺%50%' ;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
XinFuLi
2010-12-07 · TA获得超过292个赞
知道小有建树答主
回答量:211
采纳率:0%
帮助的人:130万
展开全部
set serveroutput on;
.IF abc=50 THEN
DBMS_OUTPUT.PUT_LINE('A');
.ELSE
DBMS_OUTPUT.PUT_LINE('运逗没B'旁纳指颂);
.END IF
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loveyurui
2010-12-07 · TA获得超过6556个赞
知道大有可为答主
回答量:2892
采纳率:33%
帮助的人:987万
展开全部
begin
for v in (select abc from table where....) loop -- 求出你所需要的值哪誉放顷物在游标李乎段里
if v.abc = 50 then
dbms_output.put_line('A');
elsif
dbms_output.put_line('B');
end if;
dbms_output.put_line(v.abc);
end loop;
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式