从数据到信息
从信息到洞察

CONTAINSROW 和 IN

如果表中存在或包含一行值,则返回 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] )

扩展阅读:

 

说点什么

1000
 
鼓掌微笑开心憧憬爱你色并不觉得吃瓜doge二哈喵喵思考笑哭捂脸悲伤大哭抓狂汗偷笑打脸捂眼黑线问号晕拜拜闭嘴衰咒骂ok作揖
  订阅本文评论  
提醒
DAX 圣经

DAX 函数大全

DAX 查询

DAX 运算符