プロジェクトの開始から現在の月までの月別データをプロジェクトセットに表示するレポートがあります。プロジェクトに数ヶ月間データがない場合、表示されません。1か月以上欠落しているデータを記入する方法
プロジェクトごとに欠落している月の行を表示し、それらの行に0を表示する必要があります。
レポートが生成されるプロジェクトは2つ以上あることがあります(100プロジェクトなど)。プロジェクトの開始は、2014年のような早い時期からでも可能です。現在の月は、私は数ヶ月のリストはヶテーブルに格納されているすべての201512.
として、プロジェクトの開始月を使用しています下のレポートには、例では201604.まで201401からのデータを表示する必要がある4月2016.Thenあるとし すべての月が含まれています。プロジェクト開始月(201512および現在の月201604をパラメータとのStoredProcedureに渡されます)
は現在のところ報告書は、この
=====================================
|ProjectNo | Period | Billing | WIP |
======================================
|00|201512 | 100 | 75 |
| |201601 | 200 | 100 |
--------------------------------------
|000145 |201512 | 100 | 75 |
| |201601 | 200 | 100 |
| |201602 | 250 | 110 |
| |201604 | 550 | 110 |
======================================
のように見えるのデータセットは、(ProjectReportDataとして結果セットを呼び出すことができます)このようなルックスを返さ
=====================================
|ProjectNo | Period | Billing | WIP |
======================================
|00|201512 | 100 | 75 |
|00|201601 | 200 | 100 |
|000145 |201512 | 100 | 75 |
|000145 |201601 | 200 | 100 |
|000145 |201602 | 250 | 110 |
|000145 |201604 | 550 | 110 |
======================================
あなたは201602,201603および201604プロジェクト番号000145のためのプロジェクトはありません000123. のために不足している見ることができるように、201603月が欠けています。
期待される出力が不足しているヶ月を記入します、私は数ヶ月テーブルでProjectReportDataに参加する権利をやってみました。この
=====================================
|ProjectNo | Period | Billing | WIP |
======================================
|00|201512 | 100 | 75 |
| |201601 | 200 | 100 |
| |201602 | 0 | 0 |
| |201603 | 0 | 0 |
| |201604 | 250 | 110 |
--------------------------------------
|000145 |201512 | 100 | 75 |
| |201601 | 200 | 100 |
| |201602 | 250 | 110 |
| |201603 | 0 | 0 |
| |201604 | 550 | 110 |
======================================
、 このようなものです。
|ProjectNo | Period | Billing | WIP |
======================================
|00|201512 | 100 | 75 |
|00|201601 | 200 | 100 |
|NULL |201602 | NULL | NULL|
|NULL |201603 | NULL | NULL|
|NULL |201604 | NULL | NULL|
|000145 |201512 | 100 | 75 |
|000145 |201601 | 200 | 100 |
|000145 |201602 | 250 | 110 |
|NULL |201603 | NULL | NULL|
|000145 |201604 | 550 | 110 |
======================================
しかし、NULLの代わりにProjectNoを埋め込む必要があります。
これをどのように達成できますか。提案してください。
どのdbmsを使用していますか? – jarlh
あなたはあなたの右の参加を表示できますか? – MtwStark
使用しているSQLを追加してください –