6-6 Oracle表复杂查询 -合并查询-增删改数据

CSDN话题挑战赛第2期
参赛话题:学习笔记

Oracle基础知识整理:C站下载链接

1 Oracle 基础知识2 Oracle 安装(附详细安装操作手册)3 Oracle 基本使用
4 Oracle 用户管理6 -1Oracle 表的管理-创建修改表6-2 Oracle 表的管理-表查询
6-3 Oracle 表的管理-表复杂查询6-4 Oracle表复杂查询 -多表查询6-5 Oracle表复杂查询 -子查询

6 Oracle 表的管理

6.5 oracle表的管理 -表查询(重点)

6.5.5 Oracle表复杂查询 --合并查询

·合并查询

有时在实际应用中,为了合并多个select语句的结果,可以使用集合操作符号 union,union all,intersect,minus

1)union

该操作符用于取得两个结果集的并集,当使用该操作符时,=

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

2)union all

该操作与union相似,但是它不会取消重复行,而且不会排序。

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

该操作符用于取得两个结果集的并集,当使用该操作符时,不会自动去掉结果集中重复行。

3)intersect

使用该操作符用于取得两个结果集的交集。

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

4)minus

使用该操作符用于取得两个结果集的差集,它只会显示存在第一个集合中,而不存在第二个集合中的数据。

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

集合操作远远比and和or操作速度快的多

6.6 oracle表的管理 -添加数据

·所有字段都插入

insert into student values('A001','张三','男','01-5月-05',10);

·Oracle中默认的日期格式“DD-MON-YY” dd日子(天) mon 月份 yy2位的年 ‘09-6月-99’ 1999年6月9日

·修改日期的默认格式

alter session set nls_date_format ='yyyy-mm-dd';

国家语言支持(National Language Support)

修改后,可以用我们熟悉的格式添加日期类型:

insert into student values('A002','MIKE','男','1905-05-06',10);

·插入部分字段

insert into student(xh,xm,sex) values('A003','JOHN','女');

·插入空值

 insert into student(xh,xm,sex,birthday) values('A004','MARTIN','男',null);

·查询没有生日的学生

select * from student where birthday is null;

6.7 oracle表的管理 -修改数据

·改一个字段

update student set sex='女' where xh='A001';

·修改多个字段

 update student set sex='男',

 birthday='1980-04-01' where xh='A001'

·修改含有null值的数据

6.8 oracle表的管理 -删除数据

·删除数据

 delete from student;

删除所有记录,表结构还在,写日志,可以恢复的

·恢复被删除的数据的方法:

savepoint aa;//在删除之前先保存一个点

delete from student;//删除student中数据

rollback to aa;//回滚数据

·删除表的结构和数据(不能恢复数据)

drop table student;

·删除一条记录

delete from student where xh='A001';

·删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快

truncate table student;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

度假的小鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值