日期:2014-05-18  浏览次数:20381 次

存储过程,得到100条记录,然后拿出一些字段处理,再写入新的记录到另一个表……
表:t1
字段:id、name、pay1、pay2、pay3

写一个存储过程,得到所有记录,然后 name(不变),pay1 * 100 *0.5 ,pay2*200*0.5,pay3*300*0.5。再插入到t2(结构一样)表中。

------解决方案--------------------
SQL code
insert into t2(name,pay1,pay2,pay3)
select name,pay1*100*0.5,pay2*200*0.5,pay3*300*0.5 from t1

------解决方案--------------------
oracle的话
insert into t2(name,pay1,pay2,pay3)
select name,pay1*100*0.5,pay2*200*0.5,pay3*300*0.5 from t1 where rownum<=100

sqlserver
insert into t2(name,pay1,pay2,pay3)
select top 100 name,pay1*100*0.5,pay2*200*0.5,pay3*300*0.5 from t1
------解决方案--------------------
SQL code

insert into t2(name,pay1,pay2,pay3)
select name,
pay1*100*0.5 as  pay1_1,
pay2*200*0.5 as  pay2_2,
pay3*300*0.5 as  pay3_3 
from t1