gpt4 book ai didi

dax - 2个DAX问题(根据同一张表和另一张表的条件从一个表中添加行)

转载 作者:行者123 更新时间:2023-12-02 03:28:28 33 4
gpt4 key购买 nike

假设您有 3 个表:

Table Fact Seller  : seller_code,  seller_name,  manager_code
Table Fact Manager : manager_code, manager_name
Table Fact Product : product_code, product_name, seller_code

键之间已经建立了关系。

我想计算两个方面:

1) 活跃卖家的数量。如果卖家在 Fact Product 中有任何(1 个或多个)产品,则该卖家是活跃的。

我想知道如何计算这个。会是这样的 =CALCULATE(DISTINCTCOUNT('事实卖家'[seller_code]);[此处过滤]))

[filter here] 中,我需要像 FILTER(COUNTROWS('Fact Product';'Fact Product'[manager_code])>=1) 这样的东西,以获得只有事实卖家中至少拥有一种产品的卖家。我想我需要使用关键字 VALUES() 但我没有找到正确的语法。

我想知道执行此操作的更好方法或模式。

2) 有经理的卖家数量。请注意,当检索数据时,如果卖家没有经理,则字段 manager_code 的值为“-1”。所以我可以这样做:

=CALCULATE(DISTINCTCOUNT('Fact Seller'[seller_code]);FILTER('Fact Seller';'Fact Seller'[manager_code]>=1))

所以这是表格内的过滤器。这行得通,但我想知道是否有更好的方法或模式。

你能帮忙吗?

亲切的问候

最佳答案

对于您的第一个问题,您可以创建一个 calculated column称为“主动”。这将确定该行的卖家是否活跃。

=IF(
CALCULATE(
COUNTROWS('Fact Product'),
ALL('Fact Product'),
'Fact Product'[seller_code]=EARLIER('Fact Seller'[seller_code])
)<1,FALSE(),TRUE()
)

现在您可以创建一个度量,使用这个新列来获取活跃卖家总数

ActiveSellers:=CALCULATE(
DISTINCTCOUNT('Fact Seller'[seller_code]),
'Fact Seller'[Active]=TRUE()
)

对于你的第二个问题,你的陈述可以缩短为

SellersWithManagers:=CALCULATE(
DISTINCTCOUNT('Fact Seller'[seller_code]),
'Fact Seller'[manager_code]<>-1
)

关于dax - 2个DAX问题(根据同一张表和另一张表的条件从一个表中添加行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28880596/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com