powerbi - DAX - 应用过滤器并检查记录是否为特定类别,然后输出 1,否则输出 0
问题描述
我有这样的需求,
P.No. BR IND SC TD RM CD PD Out - Col - Required
1 B N T 2/1/2011 2/1/2011 5/1/2007 1/1/2007 1
1 B N T 2/1/2011 2/1/2011 5/1/2010 2/1/2011 1
1 B N T 2/1/2011 6/1/2019 5/1/2007 2/1/2011 0
1 B N T 2/1/2011 1/1/2019 5/1/2007 2/1/2011 0
这Out-Col-Required
就是我正在尝试使用DAX - Calculated Column
.
这是它遵循的逻辑,
首先在表中过滤以下内容DAX
,
BR = B, IND = N, SC = T, TD = RM
- 然后确定 P.No. 的 Min CD 日期和 Max PD 日期。
如果差异小于30 个月,则1 else 0
.
请帮我解决这个问题。
谢谢。
解决方案
Out =
VAR PNo = OutCol[P.No.]
VAR filt =
FILTER (
OutCol;
OutCol[P.No.] = PNo
&& OutCol[TD] = OutCol[RM]
&& OutCol[BR] = "B"
&& OutCol[IND] = "N"
&& OutCol[SC] = "T"
)
VAR monthsDiff =
CALCULATE (
DATEDIFF (
MIN ( OutCol[CD] );
MAX ( OutCol[PD] );
MONTH
);
filt
)
RETURN
IF (
OutCol[TD] = OutCol[RM]
&& OutCol[BR] = "B"
&& OutCol[IND] = "N"
&& OutCol[SC] = "T"
&& monthsDiff < 30;
1;
0
)
推荐阅读
- ios - QLPreviewController 播放项
- swift - 我是否以正确的方式使用 CloudKit 为我的应用程序创建备份功能?
- android - Appcenter android 分析无法建立与控制台的连接
- python - 如何在 Python 中将变量传递给 post 请求
- c++ - 谷歌测试、类型化测试、C++
- jenkins - Jenkins中具有相同名称标签的多个可锁定资源
- javascript - 3 个单选按钮,在文本框上产生随机值,但在提交时只读取 1 个值
- r - 在R中的管道中有条件地过滤
- rust - clap - 返回 ArgMatches<'static> 时如何传递 default_value
- java - 如何在每秒钟以编程方式在android中获取当前的经度和纬度?