Oracle数据库初学之表的创建与使用(截断表、复制表)实例讲解
关于oracle的学习记录:
三十一、表的创建与使用(截断表)
如果现在要想清空一张表的记录,那么第一个反应就是执行delete操作,但是,严格来讲,执行这个操作,表所占用的资源(约束、索引)并不会被立刻释放掉
使用截断表:语法:
truncate table 表名称;
范例:截断person表
truncate table person;
一旦表被截断之后,所占用的数据空间都被释放
截断和重命名都是oracle自带的功能
三十二、表的创建与使用(复制表)
语法:
create table 表名称 as 子查询;
严格来讲,这种语法只是根据子查询返回的结构创建数据表,并且将子查询中的数据保存到新的数据表里
范例:创建一张只包含有10部门雇员信息的数据表
create table emp10 as select * from emp where deptno=10;
范例:创建一张只包含有20部门雇员编号、姓名、工资的数据表
create table emp20 as select empno,ename,sal from emp where deptno=20;
范例:创建一张包含有部门统计信息的数据表
create table deptstat as
select d.deptno,d.dname,d.loc,temp.count,temp.avg
from dept d,(
select deptno dno,count(empno) count,avg(sal) avg
from emp
group by deptno) temp
where d.deptno=temp.deptno(+)
以上是包含数据的复制
范例:复制emp表结构但是不复制里面的数据
create table empnull as select * form emp where 1=2;
这种复制表结构的操作也不属于标准sql的范畴,所以有概念就行