半月ごとの支払い期間ごとに 1 つの行と、複数のプロジェクトでそれぞれ数百人の従業員の半月ごとの給与額を含むテーブルを作成しようとしています。ERP システムから受け取る行データの形式は次のとおりです。
名前、プロジェクト、負担額(全期間の合計給与)、calcbegin(日付)、calend(日付)
各行を n 回複製するテーブルを作成したいと思います (n は、calcbegin と calcend の間の半月ごとの支払い期間の数です)。
私の問題は、範囲間の半月の日付を生成し、mssql 2008 を使用して各日付と関連情報を含む行を生成する方法です。
これがデータのサンプルです。CTEが進むべき道だと思いますが、それを機能させる方法がわかりません。CTEを機能させることができれば、日付をいじることができます。
Existing Data
Name Amount Per amt calcbegin calcend Pay Periods
Name1 5000 2,500 4/15/2013 5/15/2013 2
Name2 10000 2,000 4/15/2013 6/30/2013 5
Results Requested
Name Amount Pay amt calcbegin calcend Payperiods
1-Name1 5000 2,500 04/15/13 4/30/2013 1
2-Name1 5000 2,500 05/01/13 5/15/2013 1
1-Name2 10000 2,000 04/15/13 4/30/2013 1
2-Name2 10000 2,000 05/01/13 5/15/2013 1
3-Name2 10000 2,000 05/16/13 5/31/2013 1
4-Name2 10000 2,000 06/01/13 6/15/2013 1
5-Name2 10000 2,000 06/16/13 6/30/2013 1