CONTAINSROW 函数
返回 TRUE
if 至少有一行 all 列指定了 values。
语法
CONTAINSROW(<Table>, <Value> [, <Value> [, …] ] )
参数
术语 | 定义 |
---|---|
Table |
要测试的表。 |
Value |
返回标量 DAX的任何有效 value 表达式。 |
返回 value
TRUE
or
FALSE
。
言论
Except 语法,
IN
运算符 and CONTAINSROW 函数在功能上等效。<scalarExpr> IN <tableExpr> ( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
- scalarExprN 的数量必须与 tableExpr 中的列数匹配。
- NOT IN 在 not中 DAX 运算符。 若要执行 IN 运算符的逻辑求反,请将 NOT 放在整个表达式的前面。 例如,NOT [Color] IN { “Red”, “Yellow”, “Blue” }.
与 = 运算符不同,IN 运算符 and CONTAINSROW 函数执行严格比较。 例如,BLANKvaluenot 匹配 0。
例子
本文中的示例可用于 sample Adventure Works DW 2020 Power BI Desktop 模型。 若要获取模型,请参阅 DAXsample 模型。
示例 1
以下 DAX 查询:
EVALUATE
FILTER (
ALL ( Product[Color] ),
( [Color] )
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
and
EVALUATE
FILTER (
ALL ( Product[Color] ),
CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
返回具有单个列的下表:
[颜色] |
---|
蓝 |
红 |
黄色 |
示例 2
以下等效 DAX 查询:
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT [Color]
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
and
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
返回具有单个列的下表:
[颜色] |
---|
黑 |
灰色 |
多 |
那 |
银 |
Silver\Black |
白 |