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 が空白の場合、PATH() は ID_columnName 値を返します。 つまり、parent_columnName 列にデータが含まれていないときに従業員の上司を参照した場合、PATH 関数は従業員 ID のみを返します。

  • ID_columnName に重複があり、parent_columnName がこれらの重複と同じ場合、PATH() は共通の parent_columnName 値を返します。ただし、parent_columnName 値がこれらの重複と異なる場合、PATH() はエラーを返します。 つまり、リストに同じ従業員 ID が 2 つあり、これらが同じ上司 ID を持つ場合、PATH 関数はこの上司 ID を返します。 ただし、異なる上司 ID を持つ 2 つの同じ従業員 ID がある場合、PATH 関数はエラーを返します。

  • ID_columnName が空白の場合、PATH() は空白を返します。

  • ID_columnName に縦棒 (|) が含まれている場合、PATH() はエラーを返します。

この DAX 関数は DirectQuery モードでは使用できません。 DirectQuery モデルの制限の詳細については、https://go.microsoft.com/fwlink/?LinkId=219172 を参照してください。

使用例

次の例では、各従業員のすべての上司の一覧を示す集計列を作成します。

=PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey])