用于多个表的Oracle SQL Insert语句

用于多个表的Oracle SQL Insert语句,sql,database,oracle,sql-insert,Sql,Database,Oracle,Sql Insert,我有两个表Alpha\u设置和Beta\u视图,如下所示 Alpha\u设置: ID ( Sequence ) VIEW_ID VIEW_TYPE VIEW_VALUE Beta_视图 ID VIEW_NAME VIEW_TYPE VIEW_CHECK 我想将多个ID从Beta\u视图插入Alpha\u设置中的View\u ID,我应该如何更正我的SQL insert into alpha_setting ('', (select ID from beta_view where vie

我有两个表
Alpha\u设置
Beta\u视图
,如下所示

Alpha\u设置

ID ( Sequence )
VIEW_ID
VIEW_TYPE
VIEW_VALUE
Beta_视图

ID
VIEW_NAME
VIEW_TYPE
VIEW_CHECK
我想将多个ID从
Beta\u视图插入
Alpha\u设置中的
View\u ID
,我应该如何更正我的SQL

insert into alpha_setting 
('',  
(select ID from beta_view where view_type = 'HERO' and (view_name = 'GREEN-All' or view_name = 'GREEN-New'),  
'super_power',   
'1000000');
试着这样做:

insert into alpha_setting (ID,VIEW_ID,VIEW_TYPE,VIEW_VALUE)
select '' /* or seq_name.nextval*/, ID,'super_power','1000000'
from beta_view 
where view_type = 'HERO' 
and view_name in('GREEN-All','GREEN-New','super_power','1000000');

我不确定
view\u name
列的哪个条件对您有利

insert into alpha_setting (ID,VIEW_ID,VIEW_TYPE,VIEW_VALUE)
select '' /* or seq_name.nextval*/, ID,'super_power','1000000'
from beta_view 
where view_type = 'HERO' 
and (view_name = 'GREEN-All' or view_name in('GREEN-New','super_power','1000000'));