我必须编写一个查询来使用DAX排除记录。现在我不确定如何根据特定条件排除记录。
例如,我必须过滤数据并显示除纽约以外的所有州的公司的员工数据。我将如何实现这一目标?
似乎我只能应用过滤器来显示特定数据,而不是像在SQL中那样进行排除。在SQL中,我们可以使用NOT IN (...)
子句来做到这一点。 DAX中有类似的东西吗?
非常感谢任何帮助。谢谢!
答案 0 :(得分:2)
EVALUATE
CALCULATETABLE(
<table expression>
,<table>[State] <> "New York"
)
第一个参数不必是表格文字,但可以是返回表格的函数。
第二个参数应该在包含[State]字段的表上,我们只是排除“New York”。 CALCULATETABLE()需要1-N个参数。参数2-N是所有过滤器,可以是表格或简单谓词,如上例所示。所有过滤器参数都以逻辑和。
进行评估答案 1 :(得分:0)
如果状态是纽约,您似乎只需要一个过滤器,但如果您需要等同于SQL NOT IN
的东西,则可以使用嵌套的AND
函数。例如
EVALUATE
CALCULATETABLE(
'EMPLOYEE',
AND('EMPLOYEE'[STATE] <> "New York", AND('EMPLOYEE'[STATE] <>
"VIRGINIA", 'EMPLOYEE'[STATE] <> "MARYLAND"))
)