CONTAINSROW 関数

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

すべての列に値が指定されている行が少なくとも 1 つ存在する場合は、TRUE を返します。

構文

CONTAINSROW(<Table>, <Value> [, <Value> [, …] ] ) 

パラメーター

用語 定義
Table テストするテーブル。
Value スカラー値を返す任意の有効な DAX 式。

戻り値

TRUE または FALSE

備考

  • 構文以外では、 IN 演算子と CONTAINSROW 関数は機能的に同等です。

    <scalarExpr> IN <tableExpr> 
    ( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
    
    • scalarExprN の数は、tableExpr 内の列の数と一致する必要があります。
    • NOT IN は、 DAXの演算子ではありません。 IN 演算子の論理否定を実行するには、式全体の前に NOT を配置します。 たとえば、[Color] IN { "Red"、"Yellow"、"Blue" } を NOT します。
  • = 演算子とは異なり、IN 演算子と CONTAINSROW 関数は厳密な比較を実行します。 たとえば、 BLANK 値が 0 と一致しません。

この記事の例は、Adventure Works DW 2020 Power BI Desktop モデルのサンプルと共に使用できます。 モデルを取得するには、サンプル モデル 参照してください。

例 1

次の DAX クエリ:

EVALUATE
FILTER ( ALL ( Product[Color] ), ( [Color] ) IN { "Red", "Yellow", "Blue" } )
ORDER BY [Color]

そして

EVALUATE
FILTER (
    ALL ( Product[Color] ),
    CONTAINSROW ( { "Red", "Yellow", "Blue" }, [Color] )
)
ORDER BY [Color]

1 つの列を含む次のテーブルを返します。

[色]
青い
赤い
黄色

例 2

次の同等の DAX クエリ:

EVALUATE
FILTER ( ALL ( Product[Color] ), NOT [Color] IN { "Red", "Yellow", "Blue" } )
ORDER BY [Color]

そして

EVALUATE
FILTER (
    ALL ( Product[Color] ),
    NOT CONTAINSROW ( { "Red", "Yellow", "Blue" }, [Color] )
)
ORDER BY [Color]

1 つの列を含む次のテーブルを返します。

[色]
黒い
灰色
マルチ
NA
シルバー/ブラック
白い