PATH 函数 (DAX)
返回分隔的文本字符串以及当前标识符的所有父项的标识符,按最早到最新的顺序排列。
语法
PATH(<ID_columnName>, <parent_columnName>)
参数
ID_columnName
包含表中各行的唯一标识符的现有列的名称。 它不能是表达式。 ID_columnName 中值的数据类型必须为文本或整数,还必须与 parent_columnName 中引用的列具有相同的数据类型。parent_columnName
包含当前行的父项的唯一标识符的现有列的名称。 它不能是表达式。 parent_columnName 中值的数据类型必须为文本或整数,还必须与 ID_columnName 中的值具有相同的数据类型。
返回值
一个分隔的文本字符串,其中包含当前标识符的所有父项的标识符。
注释
此函数用在具有某种内部层次结构的表中,以返回与当前行值相关的项。 例如,在包含员工、员工的经理和经理的经理的 Employees 表中,可以返回将员工连接到其经理的路径。
路径不局限于单级父子关系;它可以返回从指定的开始行往上若干级别的相关行。
用于分隔祖先的分隔符是竖线“|”。
ID_columnName 和 parent_columnName 中的值必须具有相同的数据类型,即文本或整数。
parent_columnName 中的值在 ID_columnName 中必须存在。 也即,如果在子级没有值,则无法查找父项。
如果 parent_columnName 为 BLANK,则 PATH() 返回 ID_columnName 值。 换言之,如果您查找某个员工的经理,但 parent_columnName 列没有数据,则 PATH 函数只返回员工 ID。
如果 ID_columnName 具有重复值且 parent_columnName 对于这些重复值都相同,则 PATH() 返回公共的 parent_columnName 值;但是,如果 parent_columnName 值对于这些重复值不同,则 PATH() 返回错误。。 换言之,如果您对于同一个员工 ID 具有两个列表且它们具有相同的经理 ID,则 PATH 函数返回该经理的 ID。 但是,如果两个完全相同的员工 ID 具有不同的经理 ID,则 PATH 函数返回错误。
如果 ID_columnName 为 BLANK,则 PATH() 返回 BLANK。
如果 ID_columnName 包含竖线“|”,则 PATH() 返回错误。
不支持在 DirectQuery 模式下使用此 DAX 函数。 有关 DirectQuery 模型中的限制的详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkId=219172。
示例
以下示例创建一个计算列,该列列出每个员工的所有经理。
=PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey])