如何将一张表中查询出来的数据复制到另一张表 oracle
大家好,小弟刚学oracle,碰到下面一个问题,诚心请教各路高手需求:我要将表gl_acc_item20100706中查询出来的数据,插入到表gl_acc_item中,同...
大家好,小弟刚学oracle,碰到下面一个问题,诚心请教各路高手
需求:我要将表gl_acc_item20100706 中查询出来的数据,插入到表gl_acc_item中,同时还要修改年度
查询语句这样写的:
select * from gl_acc_item20100706 t where t.fiscal ='2010'
and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1
and t.gl_item_code not like '2%';
意思是,将上面语句查询出来的数据,插入到表gl_acc_item中,在插入表gl_acc_item的同时,还要将查询出来的数据年度 fiscal 修改为2009年,因为我在表gl_acc_item20100706中查询出的是2010年的数据,现在我要将这些数据修改为2009年之后,再插入表gl_acc_item中。
想用语句实现这些,当然,至于说导出到Excel中之后再导入gl_acc_item表的方法就算了
只修改查询出来的数据的年度
gl_acc_item20100706 表是gl_acc_item表的备份,gl_acc_item表里没有09年的数据,只有10年的数据,现在是想将gl_acc_item20100706表中查询出的10年的数据弄到gl_acc_item表中,且,也就是说gl_acc_item表中要有10年和09年的数据,只是年度不一样
select into语句在oracle中不适用 展开
需求:我要将表gl_acc_item20100706 中查询出来的数据,插入到表gl_acc_item中,同时还要修改年度
查询语句这样写的:
select * from gl_acc_item20100706 t where t.fiscal ='2010'
and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1
and t.gl_item_code not like '2%';
意思是,将上面语句查询出来的数据,插入到表gl_acc_item中,在插入表gl_acc_item的同时,还要将查询出来的数据年度 fiscal 修改为2009年,因为我在表gl_acc_item20100706中查询出的是2010年的数据,现在我要将这些数据修改为2009年之后,再插入表gl_acc_item中。
想用语句实现这些,当然,至于说导出到Excel中之后再导入gl_acc_item表的方法就算了
只修改查询出来的数据的年度
gl_acc_item20100706 表是gl_acc_item表的备份,gl_acc_item表里没有09年的数据,只有10年的数据,现在是想将gl_acc_item20100706表中查询出的10年的数据弄到gl_acc_item表中,且,也就是说gl_acc_item表中要有10年和09年的数据,只是年度不一样
select into语句在oracle中不适用 展开
2个回答
展开全部
insert into gl_acc_item select * from gl_acc_item20100706 t where t.fiscal ='2010' and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1 and t.gl_item_code not like '2%';
要修改数据,那么就需要把*换成具体字段,并用'2009'代替fiscal字段,
比如总共有acc_item_code、fiscal、id、name等几列,就要写成:
insert into gl_acc_item select acc_item_code,'2009',id,name from gl_acc_item20100706 t where t.fiscal ='2010' and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1 and t.gl_item_code not like '2%';
要修改数据,那么就需要把*换成具体字段,并用'2009'代替fiscal字段,
比如总共有acc_item_code、fiscal、id、name等几列,就要写成:
insert into gl_acc_item select acc_item_code,'2009',id,name from gl_acc_item20100706 t where t.fiscal ='2010' and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1 and t.gl_item_code not like '2%';
展开全部
create table gl_acc_item as
select * from gl_acc_item20100706 t where t.fiscal ='2010'
and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1
and t.gl_item_code not like '2%';
**********************
update gl_acc_item set fiscal='2009'
select * from gl_acc_item20100706 t where t.fiscal ='2010'
and t.acc_item_code = 'ACC_ITEM5' and length( t.gl_item_code)>1
and t.gl_item_code not like '2%';
**********************
update gl_acc_item set fiscal='2009'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询