select into from 和 insert into select 都是用来复制表
两者的主要区别为:
select into from : 要求目标表不存在,因为在插入时会自动创建;将查询出来的数据整理到一张新表中保存,表结构与查询结构一致。
select column1,column2... into new_table form old_table where (条件)
即,查询出来结果-->复制一张同结构的空表-->将数据拷贝进去。
insert into select from : 要求目标表存在。
//如果两个表结构一样:
insert into target_table select * from data_table where (条件)
//如果两个表结构不一样:
insert into target_table(column1,column2...) select column1,column2... from data_table where (条件)
即,查询出数据-->将数据插入到目标表。
网友评论