Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Oracle 10g:插入多行_Sql_Oracle10g_Sql Insert - Fatal编程技术网

Sql Oracle 10g:插入多行

Sql Oracle 10g:插入多行,sql,oracle10g,sql-insert,Sql,Oracle10g,Sql Insert,我有以下几点: 返回多行,例如: DTE | ISSUES -----------+--------- 01/JUN/91 | EE 01/JUN/03 | EE 01/JAN/06 | HH 01/AUG/06 | EE 01/AUG/08 | EE,HS,HE 我想把这些记录插入表中 问题 我应该如何编写insert语句?我是否应该使用游标,因为INSERT一次可以处理一行?使用select作为INSERT的源: insert into some_table (dt

我有以下几点:

返回多行,例如:

DTE        | ISSUES
-----------+---------
01/JUN/91  | EE
01/JUN/03  | EE
01/JAN/06  | HH
01/AUG/06  | EE
01/AUG/08  | EE,HS,HE
我想把这些记录插入表中

问题


我应该如何编写insert语句?我是否应该使用游标,因为INSERT一次可以处理一行?

使用select作为INSERT的源:

insert into some_table (dte, issues)
select dte, wm_concat(issue) as issues
from (
   select date_a as dte, issue 
   from t 
   where date_a is not null
   union all
   select date_b, issue 
   from t 
   where date_b is not null
) di
group by dte;

无需将联合的单个查询放在括号之间。

使用select作为插入的源:

insert into some_table (dte, issues)
select dte, wm_concat(issue) as issues
from (
   select date_a as dte, issue 
   from t 
   where date_a is not null
   union all
   select date_b, issue 
   from t 
   where date_b is not null
) di
group by dte;

无需在括号中插入单个联合查询。

谢谢!它起作用了。被标记为正确的并且被投了赞成票。如何在此插入中添加传递给执行此插入的函数的值
I_ref
?换句话说,对于所做的每个插入,也必须插入
i_ref
。让我知道我是否应该提出一个单独的问题。谢谢!它起作用了。被标记为正确的并且被投了赞成票。如何在此插入中添加传递给执行此插入的函数的值
I_ref
?换句话说,对于所做的每个插入,也必须插入
i_ref
。如果我要提出另一个问题,请告诉我。