比如一个表A有如下列:a,b,c,d,e,f
该表有100多w条记录
要求遍历该表,将a/b,c/d,e/f (b,d,f有可能为0)插入到表B,如果插入中有错误,则全部回滚,如何操作?
尝试
begin tran;
select * into #A from A
while(exits(select * from #A))
begin
select top 1 * from #A order by id desc
计算除后的结果
.
.
.
将结果插入表B
delete from #A where id=该行
end
commit tran;
太慢,求大师给解决方案
------解决方案--------------------
用where先排除那些字段为0的记录
------解决方案--------------------
这个不写的这么复杂把。
------解决方案--------------------
这么大的数据量,硬件也要比较好才行
------解决方案--------------------
先考虑有没有办法批量插入