0

ZIP で結合しているキューブに 2 つのテーブルがありますが、ZIP ごとに複数の行があるため、レコードが重複してしまいます。

TABLE_A
ZIP     CATEGORY   TYPE    VALUE90  VALUE75
33211   TOYS       TRAINS  GT        LT
33211   TOYS       TRAINS  GT        GT
33211   KITCHEN    TRAINS  GT        LT


TABLE_B   
ZIP       SALES   CATEGORY   DATE
33211     5.00     TOYS      10/10/11

TRAINS タイプで VALUE90 = GT の zip の売上を合計できるようにしたいのですが、ZIP で内部結合を実行しているため、複数の行が取得され、この例では SALES = 10.00 になります。SQL では select in (select distinct(zips) ...) を実行できますが、MDX でこれを行うにはどうすればよいですか? おそらく Table_A を構造化するためのより良い方法がありますが、それがどうなるかはわかりません。基本的に、特定のレベルに対して 90、75、50、25 などの値があり、これらの値のさまざまな組み合わせについて、カテゴリとタイプ別に zip をクエリできる必要があります。

SELECT 
    NON EMPTY {([CATEGORY].Members)} ON 0,
    NON EMPTY {([Measures].[SALES])} ON 1
FROM [mycube]
WHERE ([TABLE_A].[TYPE].[TRAINS].[GT])
4

2 に答える 2

2

スター スキーマではない設計があります。ディメンション テーブル (TABLE_A) には、レコードごとに一意であり、ファクト テーブル (メジャーを含むテーブル) から参照される主キーが必要です。

于 2013-10-10T16:21:36.983 に答える
0

同意します。多対多のように見えますが、完全に設定されていません。多対多に関するドキュメント (SSAS 製品ドキュメント) が先月書き直されました。http://technet.microsoft.com/en-us/library/ms365407.aspx

于 2013-10-17T21:30:24.423 に答える