如果表中存在或包含一行值,则返回 TRUE,否则返回 FALSE。 除写法不同外,IN 运算符和 CONTAINSROW 函数在功能上是等效的。
语法
- CONTAINSROW ( <表>, <值>, [ <值> … ] )
复制代码
参数 | 属性 | 描述 | 表 | | 需要测试的表,可以使用返回表的表达式 | 值 | 可重复 | 要在对应列中查找的标量表达式 |
返回值
标量 布尔值,True 或 False
备注
IN 操作符在内部执行 CONTAINSROW。以下两种写法等价:
- Product[Color] IN { "Red", "Blue", "Yellow" }
- CONTAINSROW ( { "Red", "Blue", "Yellow" }, Product[Color] )
复制代码
标量表达式的数量必须与表表达式中的列数匹配。
与=操作符不同,IN 操作符和 CONTAINSROW 函数执行严格相等的比较。例如,空白值不匹配 0。
NOT IN 不是 DAX 中的操作符。若要执行 IN NOT 放在整个表达式前面。例如:
- NOT [Color] IN { "Red", "Yellow", "Blue" }
复制代码
示例
执行多列匹配的写法:
- ( 'Date'[Year], 'Date'[MonthNumber] ) IN { ( 2018, 12 ), ( 2019, 1 ) }
- CONTAINSROW ( { ( 2018, 12 ), ( 2019, 1 ) }, 'Date'[Year], 'Date'[MonthNumber] )
复制代码
扩展阅读:
|