ログインイベントに関する情報を含むテーブルがあります。ユーザーがログインするたびに、ユーザーと日付を含むレコードが追加されます。私はそのテーブル内で、ユーザーが過去31日間にログインした回数(現在の試行を含む)を保持する新しい列を計算したいと考えています。設定時間枠のSQLローリングサマリー統計
UserID Date LoginsInPast31Days
-------- ------------- --------------------
1 01-01-2012 1
2 02-01-2012 1
2 10-01-2012 2
1 25-01-2012 2
2 03-02-2012 2
2 22-03-2012 1
は私がログイン試行の合計金額を計算する方法を知っている:これは私のテーブルには、私が追加したい列を含め、どのように見えるかの簡易版である私はCOUNT(*) OVER (PARTITION BY UserId ORDER BY Date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
を使用すると思います。ただし、期間を過去31日間に制限したい。私の推測では、UNBOUNDED PRECEDING
を変更する必要がありますが、正しい量の行を選択するように変更するにはどうすればよいですか?
は何データベースを使用していますか? –
SQL Server 2012、すぐに2016にアップグレードする予定です。 –