问题:oracle if;结果:Oracle IF语句的使用
oracle条件分支用法
a.if...then
b.if...then... else
c.if...then... elsif.... else
实例 1
问题:编写一个过程,可以输入一个雇员名,如果该雇员的工资低于2000,就给该员工工资增加10%。
create or replace procedure sp_pro6(spName varchar2) is v_sal emp_copy.sal%type;
begin
select sal into v_sal from emp_copy where ename=spName;
if v_sal<2000 then
updateemp_copy set sal=sal*1.1 where ename=spName;
end if;
end;
实例 2
问题:编写一个过程,可以输入一个雇员名,如果该雇员的补助不是0就在原来的基础上增加100;如果补助为0就把补助设为200;
create or replace procedure sp_pro6(spName varchar2) is
v_comm emp_copy.comm%type;
begin
select comm into v_comm from emp_copy where ename=spName;
if v_comm<>0 then
updateemp_copy set comm=comm+100 where ename=spName;
else
updateemp_copy set comm=comm+200 where ename=spName;
end if;
end;
实例 3
多重条件分支
if –
then –
elsif – then.
问题:编写一个过程,可以输入一个雇员编号,如果该雇员的职位是PRESIDENT就
给他的工资增加1000,如果该雇员的职位是MANAGER就给他的工资增加500,其它
职位的雇员工资增加200。
create or replace procedure sp_pro6(spNo number) is
v_job emp_copy.job%type;
begin
select job into v_job from emp_copy where empno=spNo;
if v_job='PRESIDENT'
then
updateemp_copy set sal=sal+1000 where empno=spNo;
elsif v_job='MANAGER'
then
updateemp_copy set sal=sal+500 where empno=spNo;
else
updateemp_copy set sal=sal+200 where empno=spNo;
end if;
end;
Oracle IF语句的使用
IF语句的使用
A.基本的IF条件语句:
基本语法:

END IF;
Example:

SQL> declare
x number(3):=9;
begin
if x<10 then
dbms_output.put_line('x is less than10');
end if;
end;
/
结果:
x is less than10
PL/SQL procedure successfully completed
B.IF - ELSE 语句
基本语法:

ELSE
END IF;
Example:

x NUMBER(3) := 10;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSE
dbms_output.put_line('X is not less than 10');
END IF;
END;
/
结果:
X is not less than 10
PL/SQL procedure successfully completed
C:IF - ELSIF - ELSE 语句
基本语法:

ELSIF THEN
ELSIF THEN
ELSE
END IF;
Example:

DECLARE
x NUMBER(3) := 47;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSIF x = 10 THEN
dbms_output.put_line('X is equal to 10');
ELSIF x < 100 THEN
dbms_output.put_line('X is between 11 and 99');
ELSE
dbms_output.put_line('X is greater than 99');
END IF;
END;
/
结果:
X is between 11 and 99
PL/SQL procedure successfully completed
D:与NULL值比较处理
Example:

v NUMBER;
begin
if v = 1 then
DBMS_OUTPUT.put_line('Equal to 1');
elsif v!= 1 then
DBMS_OUTPUT.put_line('Not equal to 1');
elsif v = v then
DBMS_OUTPUT.put_line('Equal to itself');
else
DBMS_OUTPUT.put_line('Undefined result');
end if;
v:=v+1;
DBMS_OUTPUT.put_line('New value: <'||v||'>');
end;
/
问题:oracle if;结果:Oracle IF语句的使用的更多相关文章
- oracle数据库中的基本语句
下面的都是最基本的oracle数据库的数据查询语句,这是我在网上整理的一份文档,方便以后自己的查看,当然,能把这些记下来就是最好的. 说明:查询表中的数据 1. select * from emp; ...
- 对于Oracle中分页排序查询语句执行效率的比较分析
转自:http://bbs.csdn.net/topics/370033478 对于Oracle中分页排序查询语句执行效率的比较分析 作者:lzgame 在工作中我们经常遇到需要在Oracle中进行分 ...
- oracle 修改表的sql语句
oracle 修改表的sql语句 1增加一个列:ALTER TABLE 表名 ADD(列名 数据类型);如:ALTER TABLE emp ADD(license varchar2(256)) ...
- 查询Oracle正在执行的sql语句
--查询Oracle正在执行的sql语句及执行该语句的用户 SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, ...
- oracle数据库删除数据Delete语句和Truncate语句的对比
oracle数据库删除数据Delete语句和Truncate语句的对比 当表中的数据不需要时,则应该删除该数据并释放所占用的空间,删除表中的数据可以使用Delete语句或者Truncate语句,下面分 ...
- oracle 监控执行的sql语句
oracle 监控执行的sql语句 select * from v$sqlarea a where module='PL/SQL Developer' order by a.FIRST_LOAD_TI ...
- oracle查询锁表解锁语句
--oracle查询锁表解锁语句--首先要用dba权限的用户登录,建议用system,然后直接看sql吧 --1. 如下语句 查询锁定的表: SELECT l.session_id sid, s.se ...
- Oracle SQL Developer中SQL语句格式化快捷键
Oracle SQL Developer中SQL语句格式化快捷键 格式化SQL语句:Ctrl+F7
- oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)
先列上我的数据库表格: c_date(Date格式) date_type(String格式) 2011-01-01 0 2012-03-07 ...
- Oracle数据库常用的Sql语句整理
Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...
随机推荐
- java调用dll或so动态库文件(c++/c)
java调用dll或so动态库文件(c++/c) 博客分类: 工作 CC#C++JavaEclipse java调用dll或so动态库文件(c++/c)开发平台:Eclipse3.3.1.1+CD ...
- Can't connect to MySQL server on 'localhost' (10061)的解决办法!
Can't connect to MySQL server on 'localhost' (10061)的解决办法! http://blog.sina.com.cn/s/blog_52ebca1f01 ...
- jmeter ant 运行 提示Error occurred during initialization of VM
运行ant提示错误 网上找到的方法 将set HEAP= -Xms512m -Xmx1024m 改成set HEAP= -Xms512m -Xmx512m 保存后运行成功
- jquery下json数组的操作用法实例
jquery下json数组的操作用法实例: jquery中操作JSON数组的情况中遍历方法用的比较多,但用添加移除这些好像就不是太多了. 试过json[i].remove(),json.remove( ...
- VMware Workstation Pro v14.0
早些时候戴尔旗下的虚拟化软件 VMware Pro v14 版正式发布,本次更新主要是优化对创意者更新版的支持. 创意者更新版是目前微软 Windows 10 系统的最新版本,该版本亦会在十月份成为C ...
- 触摸控(触摸与移动 Touch & Mobility)的官方教程
http://blogs.msdn.com/b/linanw/archive/2010/05/02/windows-1-wpf-4.aspx
- 第六次scrum meeting记录
文章负责:刘斯盾 日期:2017年10月30日 会议地点:新主楼F座二楼 各组员工作情况 团队成员 昨日完成任务 明日要完成任务 赵晓宇 评分界面搭建 issue17 课程列表页面搭建 issue20 ...
- input 标签中的checkd 添加与取消
//获取是否选中 var isChecked = $('#cb').prop('checked'); //或 var isChecked = $('#cb').is(":checked&qu ...
- asp.net 打印控件使用方法
打印的效果及控制性虽然不是很好,但是也能勉强使用,应付一般的打印还是 可以的了.代码如下所示: 代码 复制代码 代码如下: //调用PrintControl.ExecWB(?,?)实现直接打印和打印预 ...
- Vue 内联样式的数据绑定
Vue 内联样式的数据绑定 之前学的是数据绑定 class,现在可以将数据绑定到 style 中. <div id="app"> <div v-bind:styl ...