アプリケーションの合計列で現在の合計を表示する必要があるため、次のクエリを使用して現在の合計を見つけました...両方が必要に応じて機能していることがわかります。1 つは group by で left join を使用し、もう 1 つは sub query を使用しました。
そして今、私の質問は、データが毎日数千単位で増加する場合にどちらが高速であり、データが1000行または2000行の制限にある場合、どちらが優れているかです...そして、これら2つよりも高速な他の方法はありますか?? ??
declare @tmp table(ind int identity(1,1),col1 int)
insert into @tmp
select 2
union
select 4
union
select 7
union
select 5
union
select 8
union
select 10
SELECT t1.col1,sum( t2.col1)
FROM @tmp AS t1 LEFT JOIN @tmp t2 ON t1.ind>=t2.ind
group by t1.ind,t1.col1
select t1.col1,(select sum(col1) from @tmp as t2 where t2.ind<=t1.ind)
from @tmp as t1