《Oracle SQL疑难解析》——1.5 把数据记录从一张表复制到另一张表-阿里云开发者社区

开发者社区> 数据库> 正文

《Oracle SQL疑难解析》——1.5 把数据记录从一张表复制到另一张表

简介:

本节书摘来自异步社区出版社《Oracle SQL疑难解析》一书中的第1章,第1.5节,作者: 【美】Grant Allen , Bob Bryla , Darl Kuhn,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.5 把数据记录从一张表复制到另一张表

Oracle SQL疑难解析

1.5.1 要解决的问题

我们想把一个表中的信息复制到另一个表。

1.5.2 解决方法

使用INSERT语句和SELECT选项,可以把数据从一个表复制到另一个表。假定我们有一个表,里面存放着公司应聘人员信息,其中的很多信息,在HR.EMPLOYEE表中也有。下面的INSERT语句就把用SELECT 语句查询出的CANDIDATES表中的信息,插入HR.EMPLOYEES表中:

image

1.5.3 数据库如何工作

重点在于先用SELECT语句对CANDIDATES表进行查询,然后把查询结果插入HR.EMPLOYEE表中。单独执行SELECT语句,我们能看到查询的结果,这个结果将传递给INSERT语句。

image

返回结果:

210 FIRST_NAME  LAST_NAME  EMAIL  PHONE_NUMBER  SYSDATE  'IT_PRO  3500  N  103  60
--- ----------  ---------  ------  ------------  ---------  -------  ----  -  ---  --
210 Susan  Jones  SJONES  650.555.9876  30-MAR-09  IT_PROG  3500    103  60

在上面的INSERT语句中,固定了(hard-coded)EMPLOYEE_ID、SALARY、DEPARTMENT_ID的值。我们也用NULL值指明Susan没有COMMISSION_PCT的值——即,她不是销售人员,不在销售奖励的模型中。我们希望HIRE_DATE的值是我们插入记录的当天,所以用内置的SYSDATE函数返回当前系统日期。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章