我试图填充一张新桌子。
create or replace procedure extractData
is
cursor c1 is
SELECT a.id,a.data,b.id,b.data,c.id,c.data
FROM a LEFT JOIN b ON a.id=b.id
LEFT JOIN c on b.id=c.id;
begin
for currRec in c1
loop
insert into table T
values currRec,(select a_seq.nextval from dual),(select b_seq.nextval from dual),(select b_seq.nextval from dual),SYSDATE
end loop
这会给我一个表格,其中包含来自currRec的列,然后是序列和SYSDATE吗?还有一种更好的方法来做到这一点,而不是让它比现在更麻烦吗?在真实的表中,我有大约10个数据' a,b和c中的列都是如此,所以我担心搞砸了或出了问题。我正在为数据仓库编写一个过程,该过程从三个不同的来源获取数据并将它们组合在一个表中。
答案 0 :(得分:0)
INSERT
INTO table
SELECT a.id, a.data, b.id, b.data, c.id, c.data,
a_seq.nextval, b_seq.nextval, c_seq.nextval,
SYSDATE
FROM a
LEFT JOIN
b
ON b.id = a.id
LEFT JOIN
c
ON c.id = b.id