oracle学习之四(合并查询,事务和部

本文介绍了Oracle数据库中的合并查询,包括UNION、INTERSECT和MINUS的用法,展示了如何通过子查询修改数据。同时,讨论了事务管理,包括设置保存点、回滚事务以及设置只读事务以确保数据一致性。还提到了一些SQL函数的应用,如转换字符串大小写。
摘要由CSDN通过智能技术生成

     表查询:

  合并查询:使用union关键字,可将满足条件的重复行去掉。

select ename,sal,job from emp where sal > 2500 union select ename,sal,job from emp where job = 'MANAGER';

而union all用法和union相似,但是不会取消重复行。

intersect  用来取两个结果的交集。

minus用来取两个结果的差集。

使员工scott的岗位,工资,补助与SMITH员工一样。(使用子查询修改数据)

update emp set (job,sal,comm)=(select job,sal,comm from emp where ename = 'SMITH') where ename = 'SCOTT';


事务:

设置保存点

savepoint a

取消部分事务

roll back to a

取消全部事务

rollback

设置为只读事务,用于统计某一刻之前的信息,而在统计过程中,可能还有访问,影响统计,所以,统计之前,设为只读事务,这样就保存此刻之前的结果,而之后的修改,将不会显示出来,设为只读事务的语句为:

set transaction read only;
设置之后会显示事务处理集。

sql函数:

  将显示内容以小写形式显示,使用lower函数,比如

   

select lower(ename),sal from emp;
显示内容以大写形式显示,使用upper函数.还有length函数和substr函数。

select * from emp where length(ename)=5;
select substr(ename,1,3) from emp;

substr表示从第一个取,取3个。

以首字母大写的方式显示所有员工的姓名。

将员工的姓名首字母大写

select upper(sub(ename,1,1) from emp;


将第一个字母之后的字母以小写的形式表示
select lower(substr(ename,2,length(ename)-1)) from emp;

然后将两个结果合并,则得到了要显示的内容:

select upper(substr(ename,1,1))||lower(substr(ename,2,length(ename)-1))  as name from emp;

替换函数replace

select replace(ename,'A','我') from emp;







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值