0

絶食方法のように見えるので、「ローカル変数への更新」方法を使用して、SQLで実行中の合計を計算しようとしています。これにレイヤーを追加するために、実行中の合計をグループ化できることに興味がありますが、これを行うためにクエリをどこで調整すればよいかわかりません (または、この方法で可能かどうか)。 . ありとあらゆる助けをいただければ幸いです。

以下は、クエリの作成に使用したコードと、最初にこの方法にたどり着いた記事です。クエリを変更して、日ごとの累計をリセットするにはどうすればよいです

http://geekswithblogs.net/Rhames/archive/2008/10/28/calculating-running-totals-in-sql-server-2005---the-optimal.aspx

DECLARE @SalesTbl TABLE (DayCount smallint, Sales money, RunningTotal money)

DECLARE @RunningTotal money

SET @RunningTotal = 0

INSERT INTO @SalesTbl 
SELECT DayCount, Sales, null
FROM Sales
ORDER BY DayCount

UPDATE @SalesTbl
SET @RunningTotal = RunningTotal = @RunningTotal + Sales
FROM @SalesTbl

SELECT * FROM @SalesTbl

ありがとう

ライリー

4

1 に答える 1

0

コメントのリンクにより、適切なコーディングを思い付くことができました。以下は、上記の例で日ごとにグループ化するために update 関数をどのように変更する必要があるかを示しています。

UPDATE @salestbl
SET @RunningTotal = RunningTotal = sales +
    CASE WHEN daycount=@lastday THEN @RunningTotal ELSE 0 END
   ,@lastday=daycount
FROM @salestbl
于 2012-10-04T22:59:44.327 に答える