Oracle查询一张表插入另一张表中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle查询一张表插入另一张表中相关的知识,希望对你有一定的参考价值。

create table lemp (empno char(4),ename varchar2(20),job varchar2(20),hiredate date) ;
INSERT INTO lemp (EMPNO,ENAME,JOB,HIREDATE )
VALUES (SELECT EMPNO,ENAME,JOB,HIREDATE FROM ((SELECT EMPNO,ENAME,JOB,HIREDATE,ROWNUM line FROM emp) t WHERE line>10));

请大侠告诉我错在哪里,万分感激!

INSERT INTO lemp (EMPNO,ENAME,JOB,HIREDATE ) VALUES ('9527','bohu','tch','11-9月-1911') 难道只能这样手动插入?

create table lemp
as
SELECT EMPNO,ENAME,JOB,HIREDATE FROM ((SELECT EMPNO,ENAME,JOB,HIREDATE,ROWNUM line FROM emp) t WHERE line>10)追问

CREATE TABLE LEMP AS
SELECT EMPNO,ENAME,JOB,HIREDATE FROM (SELECT EMPNO,ENAME,JOB,HIREDATE,ROWNUM line FROM emp) t WHERE line>10; 非常感谢您的回答,去掉括号就可以了,WHERE是滴二层的条件,我把自己正晕了!

参考技术A INSERT INTO lemp (EMPNO,ENAME,JOB,HIREDATE )
SELECT EMPNO,ENAME,JOB,HIREDATE FROM ((SELECT EMPNO,ENAME,JOB,HIREDATE,ROWNUM line FROM emp) t WHERE line>10);
直接select 就可以了,
values 是对常量值的。追问

非常感谢您告诉我是什么原因引起的问题!去掉VALUES,去掉括号就可以了!

参考技术B line>10,这个line从哪来的??追问

ROWNUM line 在查询结果里面定义的行号!

追答

最好用t.line

Oracle查询表结果添加到另一张表中

转自:https://blog.csdn.net/lx870576109/article/details/78336695

把每一个知识点进行积累:Oracle数据库中将查询一张表的结果添加到另一张表中

insert into material_tc(matno, mname, xlmname, lmname,tkdat,comdat,tc,id)

select a.matno, a.mname, a.xlnmame, a.demo2 ,11,11,11,1 from log_material a where a.matno=‘12000161‘;

语法:insert into 表名(列名,列名,列名...)select 列名,列名,列名... from 表名 where 条件=‘’;

执行结果:

 

以上是关于Oracle查询一张表插入另一张表中的主要内容,如果未能解决你的问题,请参考以下文章

Oracle查询一张表插入另一张表中

在oracle中怎么把一张表的数据插入到另一张表中

oracle的数据库中怎么将一张表中数据插入另一张表,两张表都存在

oracle中从一张表中筛选出不再多个时间段内的时间

oracle 将一张表的数据插入到另一张表

用oracle存储过程将一张表的数据查出插入另一张表