次の方法で共有


情報。関係

適用対象: 計算列 計算テーブル ビジュアル計算 クエリ DAX メジャー

セマンティック モデル内の各リレーションシップに関する情報を含むテーブルを返します。 この関数は、テーブル間のリレーションシップに関するメタデータを提供します。

構文

INFO.RELATIONSHIPS ( [<Restriction name>, <Restriction value>], ... )

パラメーター

パラメーターは、この DAX 関数では省略可能です。 パラメーターを使用する場合は、両方を指定する必要があります。 複数のパラメーターのペアが許可されます。 制限の名前と値はテキストであり、二重引用符で囲んで入力します。

任期 Definition
制限名 結果のフィルター処理に使用される制限の名前。
制限値 制限の結果をフィルター処理するために使用される値。

制約

通常、DAX 関数の結果のすべての列を制限として使用できます。 追加の制限も許可される場合があります。

戻り値

現在のセマンティック モデルのリレーションシップのスキーマ行セットと列が一致するテーブル。

コラム Description
ID リレーションシップの一意識別子
ModelID このリレーションシップを含むモデルへの外部キー
名前 リレーションシップの名前
IsActive リレーションシップがアクティブかどうかを示すブール値
タイプ リレーションシップの種類 (OneToMany、ManyToOne など)
crossFilteringBehavior クロス フィルタリング動作 (OneDirection、BothDirections など)
JoinOnDateBehavior 日付ベースの結合の動作
参照整合性を依存する 参照整合性に依存するかどうかを示すブール値
FromTableID リレーションシップ内のソース テーブルへの外部キー
FromColumnID リレーションシップ内のソース列への外部キー
FromCardinality リレーションシップの "from" 側のカーディナリティ
ToTableID リレーションシップ内のターゲット テーブルへの外部キー
ToColumnID リレーションシップ内のターゲット列への外部キー
ToCardinality リレーションシップの "to" 側のカーディナリティ
State リレーションシップの現在の状態
RelationshipStorageID リレーションシップ ストレージ情報への外部キー
RelationshipStorage2ID 外部キーからセカンダリ リレーションシップへのストレージ情報
ModifiedTime リレーションシップが最後に変更された日時
RefreshedTime リレーションシップが最後に更新された日時
セキュリティフィルタリングの動作 リレーションシップのセキュリティ フィルター処理の動作

注釈

  • 通常、 DAX クエリでモデル メタデータを検査および文書化するために使用されます。
  • 必要なアクセス許可は、ホストによって異なります。 完全なメタデータのクエリを実行するには、モデル管理者のアクセス許可が必要な場合があります。

Example

次の DAX クエリは、クエリ ビュー DAX 実行できます。

EVALUATE
	INFO.RELATIONSHIPS()

例 2 - 結合 DAX クエリ

次の DAX クエリは、クエリ ビュー DAX 実行できます。

EVALUATE
VAR _Relationships = 
    SELECTCOLUMNS(
        INFO.RELATIONSHIPS(),
        "Relationship Name", [Name],
        "Is Active", [IsActive],
        "Type", [Type],
        "Cross Filtering", [CrossFilteringBehavior],
        "From Table ID", [FromTableID],
        "From Column ID", [FromColumnID],
        "To Table ID", [ToTableID],
        "To Column ID", [ToColumnID]
    )

VAR _FromTables = 
    SELECTCOLUMNS(
        INFO.TABLES(),
        "FromTableID", [ID],
        "From Table Name", [Name]
    )

VAR _ToTables = 
    SELECTCOLUMNS(
        INFO.TABLES(),
        "ToTableID", [ID],
        "To Table Name", [Name]
    )

VAR _FromColumns = 
    SELECTCOLUMNS(
        INFO.COLUMNS(),
        "FromColumnID", [ID],
        "From Column Name", [Name]
    )

VAR _ToColumns = 
    SELECTCOLUMNS(
        INFO.COLUMNS(),
        "ToColumnID", [ID],
        "To Column Name", [Name]
    )

VAR _CombinedTable1 = 
    NATURALLEFTOUTERJOIN(
        _Relationships,
        _FromTables
    )

VAR _CombinedTable2 = 
    NATURALLEFTOUTERJOIN(
        _CombinedTable1,
        _ToTables
    )

VAR _CombinedTable3 = 
    NATURALLEFTOUTERJOIN(
        _CombinedTable2,
        _FromColumns
    )

VAR _CombinedTable4 = 
    NATURALLEFTOUTERJOIN(
        _CombinedTable3,
        _ToColumns
    )

RETURN
    SELECTCOLUMNS(
        _CombinedTable4,
        "Relationship Name", [Relationship Name],
        "From Table", [From Table Name],
        "From Column", [From Column Name],
        "To Table", [To Table Name],
        "To Column", [To Column Name],
        "Is Active", [Is Active],
        "Type", [Type],
        "Cross Filtering", [Cross Filtering]
    )
ORDER BY [Relationship Name]

こちらも参照ください

情報。テーブル情報。列情報。PARTITIONSINFO 関数の概要