ITPub博客

首页 > 数据库 > Oracle > Oracle中把一个查询结果插入到一张表中

Oracle中把一个查询结果插入到一张表中

原创 Oracle 作者:shilei1 时间:2015-03-11 06:59:23 0 删除 编辑
一、Oracle数据库中,把一张表的查询结果直接生成并导入一张新表中。 


例如:现有只有A表,查询A表,并且把结果导入B表中。使用如下SQL语句: 


create table b as select * from a 


二、Oracle数据库中支持把查询结果导入到另外一张表中。 


例如:有两个表A和B 


1)如果两个表的表结构是否相同,但要插入的字段类型相同: 


(1)把A表的全部字段数据插入到B表中: 
insert into B select * from A; 


(2)把A表中某些字段的数据插入B表中: 
insert into B(字段名)(select 字段名 from A) 


2)如果不在同一个schema下请在表名前加上schema,例如有schema a和b: 


insert into b.B select * from a.A 


三、在jdbc中,还可以把一个表部分字段插入到另一个表中。
    insert into p_person(name,age,job) select name,?,job from p_person1 where id = ?        -- 第一个?可以按照需要进行设值,而不是表示它是p_person1字段名

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/196700/viewspace-1456082/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-10-10

  • 博文量
    548
  • 访问量
    130245