Powerbi 如何使用两种产品的订单代码创建表(或列表)
我有一个Powerbi 如何使用两种产品的订单代码创建表(或列表),powerbi,dax,Powerbi,Dax,我有一个事务表,其结构如下: ID | Product | OrderCode | Value 1 | 8 | ABC | 100 2 | 5 | ABC | 150 3 | 4 | ABC | 80 4 | 5 | XPT | 100 5 | 6 | XPT | 100 6 | 8 | XPT | 100 7 | 5
事务
表,其结构如下:
ID | Product | OrderCode | Value
1 | 8 | ABC | 100
2 | 5 | ABC | 150
3 | 4 | ABC | 80
4 | 5 | XPT | 100
5 | 6 | XPT | 100
6 | 8 | XPT | 100
7 | 5 | XYZ | 100
8 | 8 | UYI | 90
如何创建一个表(或列表),其中包含产品5和8的订单代码
在上面的例子中,应该是订单
ABC
和XPT
请详细说明您的问题,从您上面的帖子中我了解到您想要过滤列表,为此,您可以使用下面的代码
List<Transactions> listTransactions = listTransactions.FindAll(x=>x.Product == 5 || x.Product == 8)
listTransactions=listTransactions.FindAll(x=>x.Product==5 | | x.Product==8)
可能有很多方法可以做到这一点,但我提出了一个相当通用的解决方案:
FilteredList =
VAR ProductList = {5, 8}
VAR SummaryTable = SUMMARIZE(Transactions,
Transactions[OrderCode],
"Test",
COUNTROWS(INTERSECT(ProductList, VALUES(Transactions[Product])))
= COUNTROWS(ProductList))
RETURN SELECTCOLUMNS(FILTER(SummaryTable, [Test]), "OrderCode", Transactions[OrderCode])
这里的关键是,如果特定订单代码的产品集同时包含
5
和8
,那么值(transactions[Product])
与集{5,8}
的交集正好是该集,并且计数为2
。如果两者都没有,计数将是1
或0
,测试失败。我需要知道哪些订单同时有产品5和产品8。使用Power BI桌面过滤器,只选择包含这些产品的订单,但不一定是包含这两种产品的订单。太棒了!我花了一段时间才到达那里,但我明白了,谢谢!