DAX:获取父母的价值观吗? (使用连接表)

时间:2018-07-18 15:56:04

标签: powerbi dax

想象一下这种情况:

Relationship diagram

stores table relationship table

您要向stores表中添加计算列。

Calculated列将查找孩子拥有的所有父母,并将其所有some_value合并(求和或取平均值)。

我试图以这种方式

Calculated =
CALCULATE (
    SUM ( stores[some_value] ),
    FILTER (
        ALL ( stores ),
        'stores'[store_child_and_parent] = VALUES ( store_relationship[store_parent] )
    )
)

但我感到迷茫。

2 个答案:

答案 0 :(得分:0)

以下是实现此目的的几种方法:

Calculated = 
    VAR StoreList = FILTER(store_relationship,
                        store_relationship[store_child] = EARLIER(stores[store_child_and_parent]))
    RETURN CALCULATE(
               SUMX(StoreList, RELATED(stores[some_value])),
               USERELATIONSHIP(stores[store_child_and_parent], store_relationship[store_parent]))

您还可以使用查找:

Calculated = 
    VAR StoreList = FILTER(store_relationship,
                        store_relationship[store_child] = EARLIER(stores[store_child_and_parent]))
    RETURN SUMX(StoreList,
               LOOKUPVALUE(stores[some_value],
                   stores[store_child_and_parent], store_relationship[store_parent]))

答案 1 :(得分:0)

最后,花了2-3天后,我设法破解了! 这是一段漂亮的代码:

  $query = "INSERT INTO tblProjects VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
  $query->bind_param(DEFAULT, $projectnumber, 1, $customer, $customerprojectlead, $mgeprojectlead, $controls, $projecttitle, NULL, NULL, $comments, $getuser, $dateentered, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, NULL, NULL);

还有一个非常有趣的方法-例如,假设measure = CALCULATE( SUM( 'stores'[some_value] ), FILTER( ALL('stores'), 'stores'[store_child_and_parent] in VALUES('store_relationship'[store_parent]) ) ) 是一种正在执行some_value的度量,并且,例如,您想要获得这些总和的平均值,则可以将它们归类为:

SUM()