2017-05-21 7 views
0

SQL Serverディメンションテーブルを複数回使用する方法はありますか? SQL Serverには、テーブルの別名を付けて再利用する機能があります。POWERBIでは、SQL Serverディメンションテーブルを複数回使用することが可能です

たとえば、人々を保持するContactテーブルがあり、従業員ID、ベンダーID、およびクライアントIDを持つファクトテーブルがあるとします。 SQL Serverではもちろん、テーブルエイリアスを使用できます。パワーBIはこれを持っていない、または少なくとも、私は似たようなことをする方法を見つけていない。

ラフSQL文は次のようになります。

Select 
    employee.contactname as emp name, vendor.contactname as vendor name, 
    client.contactname as client name 
From 
    fact table as fact 
Join 
    contact table as employee on fact.employeeid = employee.contactid 
Join 
    contact table as vendor on fact.vendorid = vendor.contactid 
Join 
    contact table as client on fact.clientid = client.contactid 

は、上記の私が知っている、構文的に正しくありませんそれはちょうどイラストのためである。)選択肢として

、私はSQLを使用しようとしましたサーバービューとSQL Serverのシノニムが表示されますが、Power BIのテーブルの一覧には表示されません。

ありがとうございました。

答えて

0

一般的なソリューションは、ディメンションとファクトテーブルの間に複数のリレーションシップを作成し、次にDAX関数USERELATIONSHIPを使用してロールプレイングを模倣することです。

このビデオでは、技術(それはのPowerPivotを使用しますが、PowerBIの使用量が同じである)について説明します。

How To Implement a Role Playing Dimension in PowerPivot

サイドノート:個々の寸法に連絡先テーブルを分離するためのより良いデザインかもしれませんが。顧客、仕入先、従業員などが「人」であるという理由だけでそれらをグループ化することはベストプラクティスではありません。

関連する問題