//复制表不复制约束条件

1. 复制表结构及其数据:

create table table_name_new as select * from table_name_old


2. 只复制表结构:

create table table_name_new as select * from table_name_old where 1=2;

或者:

create table table_name_new like table_name_old


3. 只复制表数据:

如果两个表结构一样:

insert into table_name_new select * from table_name_old

如果两个表结构不一样:

insert into table_name_new(column1,column2...) select column1,column2... from table_name_old


4. 复制部分数据

--通过设置别名的方式 , 指定新表中的列名

SQL> create table emp_yyy

as select empno , ename , salary*12 year_sal

--year_sal为新表的列名

from emp_xxx where deptno = 10 ;


。。 --通过在新表中设置列名的方式 , 指定新表中的列名

SQL> create table emp_count( did , emp_num )

--新表中的列名

as select deptno , count(*) from emp_xxx group by deptno ;