请问ORACLE 的SQL 能不能做类似于IF......ELSE......ENDIF 的判断语句?
请问ORACLE的SQL能不能做类似于IF......ELSE......ENDIF的判断语句?如果可以,请提供例子!...
请问ORACLE 的SQL 能不能做类似于IF......ELSE......ENDIF 的判断语句?如果可以,请提供例子!
展开
5个回答
2013-07-26
展开全部
您好: oracle中是可以使用if语句的!例子如下:DECLARE
v_priority NUMBER;
v_responsetime NUMBER;
BEGIN
v_priority := 1;
IF (v_priority = 1) THEN
v_responsetime := 5;
ELSIF (v_priority = 2) THEN
v_responsetime := 15;
ELSIF (v_priority = 3) THEN
v_responsetime := 30;
END IF;
END;
v_priority NUMBER;
v_responsetime NUMBER;
BEGIN
v_priority := 1;
IF (v_priority = 1) THEN
v_responsetime := 5;
ELSIF (v_priority = 2) THEN
v_responsetime := 15;
ELSIF (v_priority = 3) THEN
v_responsetime := 30;
END IF;
END;
2013-07-26
展开全部
可以!你说的是PL/SQL吧!是Oracle在标准SQL语言上的过程性扩展。举例说明:下面以根据雇员号输出补助,为补助非0的雇员增加100元补助,其他雇员增加200元补助为例。SQL>DECLARE v_empno emp.empno%TYPE; v_comm emp.comm%TYPE; BEGIN SELECT empno,comm INTO v_empno,v_comm FROM emp WHERE empno=&no; dbms_output.put_line('雇员原补助:' | | v_comm); IF v_comm<>0 THEN v_comm:=v_comm+100; ELSE v_comm:=200; END IF; UPDATE emp SET comm=v_comm WHERE empno=v_empno; dbms_output.put_line('雇员新补助:'| | v_comm); END;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-26
展开全部
可以的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-03-08
展开全部
select case when job = 'CLERK' then '雇员' else '其他' end from emp;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-26
展开全部
类似的函数是 coalesce, decode, nullif, nvl 吧如果判断条件复杂而不能适用的时候,就要编存储过程求解了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询