料金表があります。各レートには有効な開始日があります。(任意のレートの終了日は、より新しい有効開始日を持つレコードの存在によって暗示されます。)また、アクティビティーのテーブルがあります。各アクティビティは日付に発生します。
その日に有効だったレートにアクティビティを一致させる最良の方法は何ですか?
(残念ながら、データ構造を変更することはできないため、レートの明示的な終了日を追加することはできません。)
rates:
StartDate Rate
9/1/2010 17.00
10/1/2010 18.70
11/1/2010 20.00
Activities:
WorkCenter ActionDate Hours
WC1 9/30/2010 10
WC1 10/1/2010 5
WC2 10/30/2010 8
WC2 11/3/2010 9
Desired result:
Workcenter ActionDate Hours Rate Cost(=rate*hours)
WC1 9/30/2010 10 17.00 170.00
WC1 10/1/2010 5 18.70 93.50
WC2 10/30/2010 8 18.70 149.60
WC2 11/3/2010 9 20.00 180.00