1

重複の可能性:
SqlServer で実行中の合計を計算する

トランザクションテーブルを作成しています。各ユーザーの残高をどこにも保存しないことにしました。私が計画していることは、毎月「BRING BALANCE FORWARD」を実行し、先払いで購入した残高からマイナスの借方とクレジットを差し引いて残高を計算することです。

私のテーブルはこんな感じ

ID int primary key
userID int foriegn key
TransactionDate datetime
description varchar(200)
amount money
balanceBoughtForward bit

balanceeboughtforward である最新のレコードを取得する関数を作成し、その ID を使用して、追加の列「BALANCE」を含むビューで実行中の合計との残高を計算することを計画しています。

しかし、現在の合計列を作成する方法がわかりませんか?

4

1 に答える 1

0

おそらく、私はそれを理解していないか、あなたの質問が十分に明確ではありません. これは集計関数(正確にはSUM関数)で解決しませんか?

元:

select user_id, (sum(credit) - sum(debit)) balance
from table
where
some condition
group by
user_id
于 2012-04-25T01:02:54.583 に答える