检查值是否在另一个 table 中并在 Power BI 中添加列
Check if value is in another table and add columns in Power BI
我有 2 个表,table1
包含一些调查数据,table2
是所涉及学生的完整列表。我想检查 table2
中的 Name
是否也在 table1
中找到。如果是,请在table2
中添加Age
和Level
信息,否则,请在这些栏中填写no data
。
表 1:
id Name Age Level
32 Anne 13 Secondary school
35 Jimmy 5 Primary school
38 Becky 10 Primary school
40 Anne 13 Secondary school
表 2:
id Name
1 Anne
2 Jimmy
3 Becky
4 Jack
预期输出:
id Name Age Level
1 Anne 13 Secondary school
2 Jimmy 5 Primary school
3 Becky 10 Primary school
4 Jack no data no data
更新:
我使用公共列 id
创建了 table1
和 table2
之间的关系(可以在 table1
中重复)。
然后我用了:
Column = RELATED(table1[AGE])
但发现错误:
The column 'table1[AGE]' either doesn't exist or doesn't have a relationship to any table available in the current context.
有多种方法可以实现所需的输出,但我发现其中最简单的方法是使用 RELATED
DAX 函数。如果您找到此答案,请将其标记为答案。
- 使用“名称”列在
table1
和 table2
之间创建关系。
在 table2
中创建计算列为:
Column = RELATED(table1[AGE])
也对 Level
列重复相同的步骤。
Column 2 = RELATED(table1[LEVEL])
这将为您提供一个 table,其中 ID
、Name
、Age
和 Level
是两个 [=82] 之间的通用名称=]s.
现在要将这些空行填充为 no data
,只需使用以下 DAX 创建另一个计算列:
Column 3 = IF(ISBLANK(table2[Column]), "no data", table2[Column])
Column 4 = IF(ISBLANK(table2[Column 2]), "no data", table2[Column 2])
这将为您提供所需的输出。
编辑:-您还可以使用以下公式在单列中做同样的事情
Column =
VAR X = RELATED(table`[AGE])
VAR RES = IF(ISBLANK(X), "no data", X)
RETURN
RES
和
Column 2 =
VAR X = RELATED(table1[LEVEL])
VAR RES = IF(ISBLANK(X), "no data", X)
RETURN
RES
这也会给你相同的输出。
我有 2 个表,table1
包含一些调查数据,table2
是所涉及学生的完整列表。我想检查 table2
中的 Name
是否也在 table1
中找到。如果是,请在table2
中添加Age
和Level
信息,否则,请在这些栏中填写no data
。
表 1:
id Name Age Level
32 Anne 13 Secondary school
35 Jimmy 5 Primary school
38 Becky 10 Primary school
40 Anne 13 Secondary school
表 2:
id Name
1 Anne
2 Jimmy
3 Becky
4 Jack
预期输出:
id Name Age Level
1 Anne 13 Secondary school
2 Jimmy 5 Primary school
3 Becky 10 Primary school
4 Jack no data no data
更新:
我使用公共列 id
创建了 table1
和 table2
之间的关系(可以在 table1
中重复)。
然后我用了:
Column = RELATED(table1[AGE])
但发现错误:
The column 'table1[AGE]' either doesn't exist or doesn't have a relationship to any table available in the current context.
有多种方法可以实现所需的输出,但我发现其中最简单的方法是使用 RELATED
DAX 函数。如果您找到此答案,请将其标记为答案。
- 使用“名称”列在
table1
和table2
之间创建关系。
在
table2
中创建计算列为:Column = RELATED(table1[AGE])
也对
Level
列重复相同的步骤。Column 2 = RELATED(table1[LEVEL])
这将为您提供一个 table,其中 ID
、Name
、Age
和 Level
是两个 [=82] 之间的通用名称=]s.
现在要将这些空行填充为
no data
,只需使用以下 DAX 创建另一个计算列:Column 3 = IF(ISBLANK(table2[Column]), "no data", table2[Column])
Column 4 = IF(ISBLANK(table2[Column 2]), "no data", table2[Column 2])
这将为您提供所需的输出。
编辑:-您还可以使用以下公式在单列中做同样的事情
Column =
VAR X = RELATED(table`[AGE])
VAR RES = IF(ISBLANK(X), "no data", X)
RETURN
RES
和
Column 2 =
VAR X = RELATED(table1[LEVEL])
VAR RES = IF(ISBLANK(X), "no data", X)
RETURN
RES
这也会给你相同的输出。