根据查询插入记录(oracle,sql)

时间:2018-04-24 06:54:25

标签: sql oracle insert oracle12c

我有一些记录:

select f1.id, f1.value from table1 f1
minus
select f2.id, f2.value from table2 f2;

enter image description here

我需要将所有记录记录到新表中: enter image description here

我该怎么办? 因为新col的值将只是varchar =“col1”

2 个答案:

答案 0 :(得分:3)

您可以使用select语句中的insert

INSERT INTO table
(column1, column2, ... column_n )
SELECT expression1, expression2, ... expression_n
FROM source_table
[WHERE conditions];

<强>更新 根据你的情况,试试这个:

insert into new_table (id, new_col, value) 
select id, 'col1', value from 
 (select f1.id, f1.value from table1 f1
  minus
  select f2.id, f2.value from table2 f2)

答案 1 :(得分:0)

试试这个:

INSERT INTO new_table
(id, new_col, val )
SELECT id, 'col1', col2
FROM old_table;

注意:col1中的单个倒置 - &gt;选择值为col1而不是col2 - &gt;选择列值,即True / False