SUBSTITUTEWITHINDEX

Liefert eine Tabelle, die einen linken Semijoin der beiden als Argumente angegebenen Tabellen darstellt. Der Semijoin wird unter Verwendung gemeinsamer Spalten durchgeführt, die durch gemeinsame Spaltennamen und einen gemeinsamen Datentyp bestimmt werden. Die zu verknüpfenden Spalten werden durch eine einzelne Spalte in der zurückgegebenen Tabelle ersetzt, die vom Typ „Integer“ ist und einen Index enthält. Der Index ist ein Verweis auf die rechte Jointabelle, wenn eine bestimmte Sortierreihenfolge angegeben wird.

Spalten in der bereitgestellten rechten/zweiten Tabelle, die nicht in der angegebenen linken/ersten Tabelle vorhanden sind, werden nicht in die zurückgegebene Tabelle aufgenommen und nicht für den Join verwendet.

Der Index beginnt bei 0 (nullbasiert) und wird für jede weitere Zeile in der angegebenen rechten/zweiten Jointabelle um 1 erhöht. Der Index basiert auf der Sortierreihenfolge, die für die rechte/zweite Jointabelle angegeben wurde.

Syntax

SUBSTITUTEWITHINDEX(<table>, <indexColumnName>, <indexColumnsTable>, [<orderBy_expression>, [<order>][, <orderBy_expression>, [<order>]]…])  

Parameter

Begriff Definition
table Eine Tabelle, die durch Ausführen eines linken Semijoins mit der als drittes Argument angegebenen Tabelle (indexColumnsTable) gefiltert werden soll. Dies ist die Tabelle auf der linken Seite des linken Semijoins. Die zurückgegebene Tabelle enthält daher dieselben Spalten wie diese Tabelle, mit der Ausnahme, dass alle gemeinsamen Spalten der beiden Tabellen durch eine einzige Indexspalte in der zurückgegebenen Tabelle ersetzt werden.
indexColumnName Eine Zeichenfolge, die den Namen der Indexspalte angibt, die alle gemeinsamen Spalten in den beiden Tabellen ersetzt, die als Argumente für diese Funktion angegeben werden.
indexColumnsTable Die zweite Tabelle für den linken Semijoin. Dies ist die Tabelle auf der rechten Seite des linken Semijoins. Nur Werte, die in dieser Tabelle vorhanden sind, werden von der Funktion zurückgegeben. Außerdem werden die Spalten dieser Tabelle (basierend auf Spaltennamen) durch eine einzige Indexspalte in der von dieser Funktion zurückgegebenen Tabelle ersetzt.
orderBy_expression Jeder DAX-Ausdruck, bei dem der Ergebniswert zum Angeben der gewünschten Sortierreihenfolge der indexColumnsTable-Tabelle zum Generieren korrekter Indexwerte verwendet wird. Die für die indexColumnsTable-Tabelle angegebene Sortierreihenfolge definiert den Index jeder Zeile in der Tabelle. Dieser Index wird in der zurückgegebenen Tabelle verwendet, um Wertekombinationen in der indexColumnsTable darzustellen, wie sie in der Tabelle erscheinen, die als erstes Argument für diese Funktion angegeben wird.
order (optional) Ein Wert, der angibt, wie orderBy_expression-Werte sortiert werden (aufsteigend oder absteigend):

Wert: Desc. Alternativer Wert: 0(Ziffer Null)/FALSE. Sortierung in absteigender Reihenfolge nach Werten von orderBy_expression. Dies ist der Standardwert, wenn kein Parameter für die Reihenfolge angegeben wird.

Wert: ASC. Alternativer Wert: 1/TRUE. Legt die Rangfolge in aufsteigender Reihenfolge von orderBy_expression fest.

Rückgabewert

Eine Tabelle, die ausschließlich Werte aus der indexColumnsTable-Tabelle enthält und eine Indexpalte anstelle aller in der indexColumnsTable-Tabelle vorhandenen Spalten (nach Namen) aufweist.

Bemerkungen

  • Diese Funktion garantiert keine Sortierung der Ergebnisse.

  • Die Verwendung dieser Funktion im DirectQuery-Modus wird nicht unterstützt, wenn sie in berechneten Spalten oder RLS-Regeln (Row-Level Security) eingesetzt wird.