ORACLE提取原表数据修改之后再插入到原表当中,在不建立临时表的情况下。

如题所述

第1个回答  2013-05-09
原表a:字段:a1 number(10),a2 varchar(10)
处理如:update a set a1=a1+5000,a2=a2||'a000'
注:要考虑到处理后是否还能满足数据要求,如a1=9999999999,处理后数据越界追问

不能直接修改原数据,是在原数据保留的情况下。在原表继续追加新修改的数据

追答

insert into a values(select a1+5000,a2=a2||'a000' from a where a1=123 );大概格式,你需要注意的是,原表操作容易造成数据混乱,即原始数据和操作后数据不容易区分,建议加标记字段来区分一下

第2个回答  2013-05-09
在不建建立临时表的情况下也有很多的办法,如直接update.这个是最省时省事的。直接方法。
另外还有, 用过程或是触发器实现。
相似回答