私はパーティションの行数を数えたいと思う0-3ヶ月。月は、1月2016日に201601
のような形式でMYMONTHによって指定されます。私はSQL Server 2014を使用しています。どのように3か月間にパーティションを実行できますか?SQL Server:3か月分のパーティションを作成する方法?
SELECT COUNT(*),
COUNT(*)
/
(COUNT(*) OVER (PARTITION
BY MYMONTH RANGE BETWEEN 3 MONTH PRECEDING AND CURRENT MONTH))
FROM myData
サンプル
| Month | Value | ID |
-------------------------|
| 201601 | 1 | X |
| 201601 | 1 | Y |
| 201601 | 1 | Y |
| 201602 | 1 | Z |
| 201603 | 1 | A |
| 201604 | 1 | B |
| 201605 | 1 | C |
| 201607 | 1 | E |
| 201607 | 10 | EE |
| 201607 | 100 | EEE|
カウント
| Month | Count | Count3M | Count/Count3M |
-------------------------------------------
| 201601| 3 | 3 | 3/3 |
| 201602| 1 | 4 | 1/4 |
| 201603| 1 | 5 | 1/5 |
| 201604| 1 | 6 | 1/6 |
| 201605| 1 | 4 | 1/4 |
| 201607| 3 | 5 | 3/5 |
編集ご質問や、サンプルデータと望ましい結果を提供します。 –
@GordonLinoffがサンプルを追加しました。 – hhh
@hhh OK分かった – etsa