RELATED和RELATEDTABLE

发布时间 2023-04-11 18:18:42作者: 本大王派你去寻山

RELATED

RELATED是列函数,返回一个列,前提是需要两张表之间有关联关系

两张表Sheet1和CATEGORY SORT,用过CATEGORY关联

 

 

在表Sheet1中新增列:

RELATED = RELATED('CATEGORY SORT'[CATEGORY])

 

计算结果:

 

 

RELATEDTABLE

RELATEDTABLE是表函数,返回一张表,功能是通过一张表去匹配另一张表的数据,也就是沿着数据一端找多端的数据,通常可以配合聚合函数使用,这样的话就可以返回一个数值,使用RELATEDTABLE的时候不强制要求两表之间有关联关系

 

新建度量值:

RELATEDTABLE 1 = COUNTROWS(RELATEDTABLE(Sheet1))
RELATEDTABLE 2 = COUNTROWS(RELATEDTABLE(Query1))

 

 

 

然后从CATEGORY SORT表中将CATEGORY拖拽出来:

 

 可以看到两表之间有关联关系的话,就会把能对应上的数据筛选出来,如果没有对应关系就会将所有的数据都匹配上。

 

LOOKUPVALUE

这个和EXCEL中的VLOOKUP很像,可以进行多条件查询,并且两表无需建立关系

语法:LOOKUPVALUE( <result_columnName>, <search_columnName>, <search_value> [, <search2_columnName>, <search2_value>]… [, <alternateResult>] )

参数:

result_columnName:返回结果的列名,一般是要在维度表中查找的结果列

查找列:查找的列,不能是表达式

查找值:查找的内容

 

因为是多条件查询,后面参数都同第二参数和第三参数一样,但是必须成对出现,多条件查询中一定要有一对唯一值条件,否则不成功

返回:一个值

注意:作用于计算列,如果没有满足所有条件的值,返回blank();如果满足所有条件值,则返回相应值;如果不相等,则返回错误

举例:查找产品表中的价格列返回到销售数据表中

查找产品表价格 = LOOKUPVALUE('产品分类表'[价格],'产品分类表'[产品ID],'销售数据表'[产品ID])

当然后面多加几个条件查询都可以,前提是维度表中查找的列在事实表中能对应上