如何使用dax基于左连接在table中添加列

How to add column in table based on left join using dax

根据 item_category table 上的左联接在 Table 项中添加列。我想根据左连接

在项目 table 中添加列 itemcategory_category
=ADDCOLUMNS (
        items, LOOKUPVALUE (
        'item_category'[ITEMCATEGORY_CATEGORY],
        'items'[KEY_PRODUCTCATEGORY], item_category[KEY_PRODUCTCATEGORY]
        )
)

项目Table

KEY_PRODUCTCATEGORY
    1

item_category table

KEY_PRODUCTCATEGORY     ITEMCATEGORY_CATEGORY   
    1                            A

如果你有一对一的关系

Table = ADDCOLUMNS(items,"new",RELATED(item_category[ITEMCATEGORY_CATEGORY]))

如果你们没有关系

Table 2 = ADDCOLUMNS(items,"new",CALCULATE(MAXX(filter(item_category,item_category[KEY_PRODUCTCATEGORY]=MAX(items[KEY_PRODUCTCATEGORY])),item_category[ITEMCATEGORY_CATEGORY])))

如果您只热衷于 LOOKUPVALUE 有或没有关系。 LOOKUPVALUE 不依赖于任何关系,但存在性能问题。

Table 3 = ADDCOLUMNS(items,"new",LOOKUPVALUE(item_category[ITEMCATEGORY_CATEGORY],item_category[KEY_PRODUCTCATEGORY],items[KEY_PRODUCTCATEGORY]))

我用following测试过,效果很好。