代码:
declare c1 cursor for SELECT  dwh, dwmc FROM ndwdjb
open c1
FETCH NEXT FROM c1 INTO @dwh , @dwmc 
while @@FETCH_STATUS=0
begin
--按单位取煤种号和价格
declare c2 cursor for 
SELECT distinct mzh,mzbh,jg
    FROM nmtxsqkb  
WHERE ( convert(char(10),rq,120) >= @rqq1 ) and 
  ( convert(char(10),rq,120) <= @rqq2 ) and
wcbz=1 and 
dwh=@dwh order by mzh, mzbh;
----------------------------------------------------------------
open c2
FETCH NEXT FROM c2 INTO @mzh, @mzbh , @mjg
while @@FETCH_STATUS=0
begin
set @zzl = 0
set @zje = 0
set @ljzl = 0
set @ljje = 0
set @yfkje = 0
set @xscs = 0
set @dqzl = 0
SELECT @mzmc = mzm FROM nmzb WHERE mzh = @mzh;--取煤种名称
SELECT @yfkje = je, @dqzl = dqzl FROM ndwdjb WHERE dwh = @dwh;--取余额
---------------------取当日或月总重量、总金额、总车数--------------------
SELECT @xscs=count(*),@zzl=(sum(isnull(zczl,0) - isnull(kczl,0)))*0.001,@zje=sum(((isnull(zczl,0) - isnull(kczl,0))*0.001)*isnull(jg,0))
FROM nmtxsqkb  
WHERE (( convert(char(10),rq,120) >= @rqq1 ) and
  ( convert(char(10),rq,120) <= @rqq2 )) and
wcbz=1 and 
dwh=@dwh and 
mzbh=@mzbh and
jg=@mjg
group by dwh,mzbh,jg;
----------------------------------------------------------------------
---------------------取累计总重量、总金额、总车数--------------------
SELECT @ljzl=(sum(isnull(zczl,0) - isnull(kczl,0)))*0.001,@ljje=sum(((isnull(zczl,0) - isnull(kczl,0))*0.001)*isnull(jg,0))
FROM nmtxsqkb  
WHERE (( convert(char(10),rq,120) >= @jsjzr ) and
  ( convert(char(10),rq,120) <= @rqq2 )) and
wcbz=1 and 
dwh=@dwh and 
mzbh=@mzbh and
jg=@mjg
group by dwh,mzbh,jg;
----------------------------------------------------------------------
insert into #temp_xstj
(dwh,dwmc, mzbh, mzmc, mjg ,zzl ,zje ,ljzl ,ljje ,yfkje ,xscs ,rrq ,dqzl)
values
(@dwh, @dwmc,@mzbh ,@mzmc, @mjg,@zzl,@zje,@ljzl,@ljje,@yfkje,@xscs,@rqq2,@dqzl)
FETCH NEXT FROM c2 INTO @mzh, @mzbh , @mjg
end
CLOSE c2
DEALLOCATE c2
FETCH NEXT FROM c1 INTO @dwh , @dwmc
end
CLOSE c1 DEALLOCATE c1
select dwh,dwmc,mzbh, mzmc ,mjg ,zzl ,zje ,ljzl ,ljje ,yfkje ,xscs ,rrq ,dqzl from #temp_xstjDROP TABLE #temp_xstjcommit tran;15万条记录,统计完用5分钟
我加了索引,但还是慢,不知道是不是索引加错了。
我应该在哪些字段上加啊,加几个,谢谢各位。