如何在DAX查询中使用FILTER

我的数据如下:

Machine Name | Producing Status | Time To | Time From 
A | ON | 3:00:00 | 4:10:00
B | ON | 4:15:00 | 5:10:00
B | OFF | 5:00:00 | 5:15:00

基本上我想编写一个DAX查询,在这里我可以将“生产状态”过滤为“开”并以秒为单位计算时间差。我已经设法完成了第二部分,并提出了查询ABS(DATEDIFF('datasetname'[col_name],'datasetname'[col_2_name],SECOND),但是我不知道在哪里准确过滤出生产状态!>

sunxun99 回答:如何在DAX查询中使用FILTER

您需要将度量包装在CALCULATE函数中,以便可以添加过滤器上下文

因此应为CALCULATE(度量,FILTER(过滤逻辑))

对于FILTER,您要传递表名,然后输入逻辑

FILTER('datasetname','datasetname'[Producing Status] = "ON")

应该是:

Measure 2 =
VAR dif =
    DATEDIFF ( MAXX ( 'Table',[Time From] ),MAXX ( 'Table',[Time To] ),SECOND )
RETURN
    CALCULATE ( dif,FILTER ( 'Table','Table'[Producing Status] = "ON" ) )

您还可以使用IF语句创建计算列

Column = IF('Table'[Producing Status] = "ON",DATEDIFF('Table'[Time From],'Table'[Time To],SECOND),BLANK())

希望有帮助

本文链接:https://www.f2er.com/3167400.html

大家都在问