0

だから私は出荷のための次元データベースを持っています:

貨物には多くのパッケージが含まれています。パッケージには多くの料金が含まれています。

これはディメンションであり、料金は私が最も関心のあるデータであるため、3 つのテーブルとそれらの多対 1 の関係を 1 つの料金ファクト テーブルにフラット化しました。これは、それぞれが 1 ポンドの重さの 2 つのパッケージを含む 1 つの出荷の簡単なスナップショットです。

ここに画像の説明を入力

パッケージの重量をクエリ可能にするために、料金の粒度までプッシュする必要がありました。これにより、集計で問題が発生します。各パッケージには 1 ポンドのパッケージ重量が適用され、出荷の場合は 2 ポンドになります。この方法で重みをメジャーとして集計する方法が見つかりません。私は SSAS と OLAP に非常に慣れていないので、次に何を試せばよいかわかりません。どんな提案でも大歓迎です。

4

1 に答える 1

1

問題は、データをモデル化する方法です。(事実)テーブルの最小レベルの粒度は「請求金額」です...「パッケージ重量」の金額は、より高い粒度レベル(パッケージレベル)です。

選択肢は 2 つあります...

  1. ETL では、パッケージごとに異なる請求額に 1 ポンドを割り当てることができます (下のスクリーンショットを参照)。このように、出荷またはパッケージでこのファクト テーブルをスライスすると、それぞれ 2 ポンドまたは 1 ポンドが表示されます。

    スクリーンショット

  2. このファクト テーブルから「パッケージの重量」フィールドを引き出して、粒度がパッケージ レベルにあるフィールドに入れます。

于 2012-01-11T18:11:28.287 に答える