300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > oracle中create table as和insert into select语句

oracle中create table as和insert into select语句

时间:2018-08-26 01:39:53

相关推荐

oracle中create table as和insert into select语句

SELECT INTO , INSERT INTO SELECT 和 CREATE TABLE AS SELECT

INSERT INTO SELECTCreate table newTable as select * from

复制表的数据,将A表的数据复制到B表中,常见的操作方式有三种:

INSERT INTO SELECTCREATE TABLE AS SELECT

INSERT INTO SELECT

语句形式为:Insert into Table2(field1,field2,…) select value1,value2,… from Table1

注意:

(1)要求目标表Table2必须存在,并且字段field,field2…也必须存在

(2)注意Table2的主键约束,如果Table2有主键而且不为空,则 field1, field2…中必须包括主键

(3)注意语法,不要加values,和插入一条数据的sql混了,不要写成:

Insert into Table2(field1,field2,…) values (select value1,value2,… from Table1)

由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。

Create table newTable as select * from

create. as…select,有以下三种方式;

create table table1 as select * from table2 where 1=2;

创建一个表结构与table2一模一样的表,只复制结构不复制数据;create table table1 as select * from table2 ;

创建一个表结构与table2一模一样的表,复制结构同时也复制数据;create table table1(columns1,columns2) as select columns1,columns2 from table2;

创建一个表结构与table2一模一样的表,复制结构同时也复制数据,但是指定新表的列名;

create table as是ddl语句,insert into select是dml语句,insert into select每一条记录的时候都会产生undo和redo,整个过程相比create table as产生的redo和undo相当多。当有大量数据的时候不推荐使用Insert into as,因为该语句的插入的效率很慢。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。