欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

关于while循环

更新时间: 2014-01-05 02:17:25 责任编辑: Author_N1

 

求助关于while循环
例如:
while(@id >0)--@id大于500
begin
   select  @i= i,@x=x from tba
   where id=@id
   while(@i>10) --@i 基本都大于20
   begin
       update tbb
       set z=z+1
       where  tbb.x=@x --原代码中的update要多表连接
       
       set @i =@i-1
   end
   set @id=@id-1
end

这样的循环怎么改能提升他的执行速度呢
--参考方法--
其实很多循环是可以集合操作来优化,不过你这个查询是用来干嘛的?
--参考方法--
其实只需要这个就行了,然后把上面的语句合并进去:

update #order
set 一个月=isnull(#order.一个月,0)+A.一个月
from 
(
select T_顾客.顾客, sum((isnull(dbo.T_顾客详细.金額,0)))   as 一个月 
from dbo.T_顾客
where  dbo.T_顾客.工厂区分='1' and 受注日 <=@末
and 受注日>=@前
group by T_顾客.顾客
)A 
where #order.顾客=@cust
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:17:25
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/8049/
本文WWW.DOC100.NET DOC100.NET版权所有。