如何在Power Bi上基于日期和多个条件生成结果?

时间:2020-01-21 03:36:59

标签: powerbi powerbi-desktop powerbi-embedded powerbi-datasource powerbi-custom-visuals

我正在尝试根据日期和一些过滤器创建验证

我的输入表是

Status  Type    Date        PolicyNo 
PS      T607    01-01-2020  1002
PS      T608    01-01-2020  1002
CF      T646    01-01-2020  1002
PS      T607    04-01-2020  1003

我的状况是

1)在一天内如何应用多个条件

  • 例如2020年1月1日,第1002天政策(1002),我们有三个类型为T607,状态为(PS / CF)的(T608 / T646)中的任何一个,输出值为0,否则为1

2)我的预期输出是

Status  Type    Date        PolicyNo    Accept
PS      T607    01-01-2020  1002        0
PS      T608    01-01-2020  1002        0
CF      T646    01-01-2020  1002        0
PS      T607    04-01-2020  1003        1

编辑:

Date
01-01-2020
01-01-2020
01-01-2020

PolicyNo
1002
1002
1002

Type : T697 with (T608 or T646)

T607 - compalsory so (&&)
T608 - Optional so (||)
T646 - Optional so 

(and)

Status : PS or CF 
PS - Optional so (||)
CF - Optional 

结论条件:与(类型:T697和(T608或T646))具有相同的日期(例如01-01-2020)和相同的政策编号(例如1002)与(状态:PS或CF)

1 个答案:

答案 0 :(得分:1)

M(自定义查询)中的多个条件:

= if [Date] = Date.From(DateTime.LocalNow()) and [Type] = "T607" and [PolicyNo] = 1003 then 1 else 0

依此类推...

注意:语法必须为小写,因为M区分大小写。 您也可以堆叠if或使用else if。您还可以使用or条件。

您可以在DAX中执行相同的操作。使用IF()OR()函数(作为新列):

= IF(OR([Date] = TODAY(), [Type] = "T607", [PolicyNo] = 1003), 1, 0)

编辑

对您的第四条评论。这种逻辑效果很好(简化示例):

enter image description here