次の方法で共有


TREATAS

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

テーブル式の結果をフィルターとして、関連のないテーブルの列に適用します。

構文

TREATAS(table_expression, <column>[, <column>[, <column>[,…]]]} )

パラメーター

用語 定義
table_expression テーブルを生成する式。
column 1 つ以上の既存の列。 これを式にすることはできません。

戻り値

table_expression内のすべての行を含むテーブル。

解説

  • 指定する列の数は、テーブル式の列数と一致し、同じ順序である必要があります。

  • テーブル式で返された値が列に存在しない場合は無視されます。 たとえば、TREATAS({"Red"、"Green"、"Yellow"}、DimProduct[Color]) は、列 DimProduct[Color] にフィルターを設定し、3 つの値 "Red"、"Green"、"Yellow" を設定します。 DimProduct[Color] に "Yellow" が存在しない場合、有効なフィルター値は "Red" と "Green" になります。

  • テーブル間にリレーションシップが存在しない場合に最適です。 関連するテーブル間に複数のリレーションシップがある場合は、代わりに USERELATIONSHIP を使用することを検討してください。

  • この関数は、計算列または行レベル セキュリティ (RLS) 規則で使用する場合、DirectQuery モードでは使用できません。

次の例では、モデルに 2 つの関連のない製品テーブルが含まれています。 ユーザーが DimProduct1[ProductCategory] に自転車、シート、タイヤ、同じフィルター、自転車、シート、タイヤを選択するフィルターを適用した場合、DimProduct2[ProductCategory] に適用されます。

CALCULATE(
    SUM(Sales[Amount]),
    TREATAS(
        VALUES(DimProduct1[ProductCategory]),
        DimProduct2[ProductCategory]
    )
)

INTERSECT FILTER USERELATIONSHIP