CONTAINSROW 函数

适用于:计算列计算表度量值视觉对象计算

如果至少存在一个所有列都具有指定值的行,则返回 TRUE。

语法

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

parameters

术语 定义
要测试的表。
任何返回标量值的有效 DAX 表达式。

返回值

True 或 False。

备注

  • 除语法外,IN 运算符和 CONTAINSROW 函数在功能上是等效的。

    <scalarExpr> IN <tableExpr> 
    ( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
    
    • scalarExprN 的数量必须与 tableExpr 中的列数相匹配。
    • NOT IN 不是 DAX 中的运算符。 要执行 IN 运算符的逻辑否定,请将 NOT 放在整个表达式前面。 例如,NOT [Color] IN { "Red", "Yellow", "Blue" }。
  • 与 = 运算符不同,IN 运算符和 CONTAINSROW 函数执行严格的比较。 例如,空白值与 0 不匹配。

示例

可将本文中的示例与 Adventure Works DW 2020 示例模型结合使用。 若要获取模型,请参阅 DAX 示例模型

示例 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]

返回以下单列表:

[Color]
蓝色
Red
Yellow

示例 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]

返回以下单列表:

[Color]
黑色
灰色
NA
Silver
银色\黑色
白色

IN 运算符
DAX 查询