Powerbi Power BI DAX:使用行对筛选器上下文计算不同度量值
长时间坐在这里,这是我的数据:Powerbi Power BI DAX:使用行对筛选器上下文计算不同度量值,powerbi,dax,powerbi-desktop,Powerbi,Dax,Powerbi Desktop,长时间坐在这里,这是我的数据: +------------+---------+------------+ | OrderID | Status | Text | +------------+---------+------------+ | 1 | rel | W3-A | +------------+---------+------------+ | 1 | conf | log | +-----
+------------+---------+------------+
| OrderID | Status | Text |
+------------+---------+------------+
| 1 | rel | W3-A |
+------------+---------+------------+
| 1 | conf | log |
+------------+---------+------------+
| 3 | rel | W3-A |
+------------+---------+------------+
| 4 | rel | W3-B |
+------------+---------+------------+
| 5 | rel | W3-C |
+------------+---------+------------+
| 6 | rel | W3-B |
+------------+---------+------------+
| 6 | conf | log |
+------------+---------+------------+
| 7 | conf | log |
+------------+---------+------------+
| 8 | rel | W3-B |
+------------+---------+------------+
| 8 | rel | log |
现在,我想提出一个衡量标准,表明:
=计算每个具有
(Status=rel&&text=以“W3”开头),但还有一行(Status=conf&&text=log)
这将导致总数为“2”:
OrderID1和OrderID6满足这些条件
如下表所示:
+------------+---------+------------+------------+
| OrderID | Status | Text | distinctCount
+------------+---------+------------+------------+
| 1 | rel | W3-A | 1
+------------+---------+------------+------------+
| 1 | conf | log | 1
+------------+---------+------------+------------+
| 3 | rel | W3-A |
+------------+---------+------------+------------+
| 4 | rel | W3-B |
+------------+---------+------------+------------+
| 5 | rel | W3-C |
+------------+---------+------------+------------+
| 6 | rel | W3-B | 1
+------------+---------+------------+------------+
| 6 | conf | log | 1
+------------+---------+------------+------------+
| 7 | conf | log |
+------------+---------+------------+------------+
| 8 | rel | W3-B |
+------------+---------+------------+------------+
| 8 | rel | log |
-------------+---------+------------+------------+
TOTAL 2
因此,在“卡片”可视化中拖动度量值应该只显示
Order CountDist
+--------------+
2
+--------------+
您可以找到满足每一组条件的ID,然后通过交点查找其中哪一个同时满足这两个条件
DistinctCountPairs =
VAR rel_W3 =
CALCULATETABLE (
DISTINCT ( Orders[OrderID] ),
Orders[Status] = "rel",
LEFT ( Orders[Text], 2 ) = "W3"
)
VAR conf_log =
CALCULATETABLE (
DISTINCT ( Orders[OrderID] ),
Orders[Status] = "conf",
Orders[Text] = "log"
)
RETURN
COUNTROWS ( INTERSECT ( rel_W3, conf_log ) )
如果需要,可以将最后一行切换到
CONCATENATEX ( INTERSECT ( rel_W3, conf_log ), Orders[OrderID], "," )
打印位于交叉点的ID的列表