数週間ごとにステータスが変わるアイテムの表があります。任意の日を見て、各ステータスのアイテム数を調べたいと思います。
例えば:
tbl_ItemHistory
ItemID
StatusChangeDate
StatusID
サンプルデータ:
1001, 1/1/2010, 1
1001, 4/5/2010, 2
1001, 6/15/2010, 4
1002, 4/1/2010, 1
1002, 6/1/2010, 3
...
そのため、特定の日に各ステータスにあったアイテムの数を把握する必要があります。したがって、2010年5月1日には、ステータス2に1つのアイテム(1001)があり、ステータス1(1002)に1つのアイテムがありました。
毎晩キャッシュされたテーブルを作成し、すべてのアイテムと1年の毎日の行を作成して、時間の経過に伴うステータスの変化をグラフで表示できるようにします。SQLについてはよくわかりません。forループを使用することを考えていましたが、フォーラムで見た創造的な回答のいくつかに基づいて、それが正しい方法であるとは思えません。
SQLServer2008R2を使用しています
私は周りを見回しましたが、これはこの質問に似ていると思います:https ://stackoverflow.com/questions/11183164/show-data-change-over-time-in-a-chart しかし、それは答えられませんでした。これらのことを行う方法はありますか?