0

私の SSIS/DW プロジェクトには、次のように代理キーによって FACT テーブルにリンクされている DIM.DATE ディメンションがあります。

ALTER TABLE FACT.SALES ADD date_id INT NOT NULL
ALTER TABLE FACT.SALES WITH CHECK ADD CONSTRAINT FK_dim_date FOREIGN KEY (date_id) REFERENCES DIM.DATE(date_id)

これにより、ファクト テーブルに "date_id" が作成されます。SSIS インポート プロセス中に日付列が渡されます (shipped_date)。これを使用して DIM.DATE テーブルを検索し、ディメンションの代理キーを渡します。

これはうまく機能しますが、請求書の日付、受領日などにいくつかの異なる日付ディメンションが必要です.

これを行うために既存の DIM.DATE を使用する方法について混乱していますか?

その後、ファクト テーブルにさらに列を追加できます。

-- add column into fact table
ALTER TABLE FACT.SALES ADD shipped_date_id INT NOT NULL
ALTER TABLE FACT.SALES ADD invoice_date_id INT NOT NULL

-- add foreign key
ALTER TABLE FACT.SALES WITH CHECK ADD CONSTRAINT FK_shipped_date FOREIGN KEY (shipped_date_id) REFERENCES DIM.DATE(date_id)
ALTER TABLE FACT.SALES WITH CHECK ADD CONSTRAINT FK_invoice_date FOREIGN KEY (invoice_date_id) REFERENCES DIM.DATE(date_id)

しかし、ルックアップを行うときは、「date_id」列のみを渡すことができます..これをすべて一緒に機能させる方法がわかりません。

私のためにこれを片付けることができる人はいますか?ここに画像の説明を入力

4

1 に答える 1

1

複数のLookUpトランスフォームを使用する必要があります...ファクトテーブルのDateKeyフィールドごとに1つ。

于 2012-11-02T18:17:39.490 に答える