次元データベースを設計しようとすると、この問題が発生します。基本的に、代理キー、いくつかの外部キー (製品 ID の pid、国 ID と日付の cid)、および販売データを含むファクト テーブル (sale_fact) があります。粒度またはこのファクト テーブルは日単位です。これらの外部キーのさまざまな組み合わせに応じて、週 (または月) の売上データを合計するにはどうすればよいですか? たとえば、今週の国 1 での製品 1 の売上データ (pid = 1 および cid = 1 および日付 = 月曜日) と、同じ週の国 2 での製品 2 の売上データ (pid = 2 およびcid = 2 および日付 = 月曜日)。1 つの SQL でこのデータを取得するにはどうすればよいですか? サンプルの結果セットは次のようになります。
| id | pid | cid | date | total |
| 1 | 1 | 1 | 2013-11-04 | 100 |
| 2 | 1 | 2 | 2013-11-04 | 90 |
| 3 | 1 | 3 | 2013-11-04 | 80 |
| 4 | 2 | 1 | 2013-11-04 | 91 |
......more data