SUBSTITUTEWITHINDEX
Gilt für:Berechnete Spalte
Berechnete Tabelle
Measure
visuelle Berechnung
Gibt eine Tabelle zurück, die einen linken Semijoin der beiden Tabellen darstellt, die als Argumente angegeben werden. Das Semijoin wird mithilfe allgemeiner Spalten ausgeführt, die durch gemeinsame Spaltennamen und den gemeinsamen Datentyp bestimmt werden. Die Spalten, die verknüpft werden, 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 Verknüpfungstabelle mit einer angegebenen Sortierreihenfolge.
Spalten in der angegebenen rechten/zweiten Tabelle, die in der angegebenen linken/ersten Tabelle nicht vorhanden sind, sind nicht in der zurückgegebenen Tabelle enthalten und werden nicht zum Verbinden verwendet.
Der Index beginnt bei 0 (0-basiert) und wird für jede zusätzliche Zeile in der bereitgestellten rechten/zweiten Verknüpfungstabelle um eine zeile erhöht. Der Index basiert auf der Sortierreihenfolge, die für die rechte/zweite Verknüpfungstabelle angegeben ist.
Syntax
SUBSTITUTEWITHINDEX(<table>, <indexColumnName>, <indexColumnsTable>, [<orderBy_expression>, [<order>][, <orderBy_expression>, [<order>]]…])
Parameter
Begriff | Definition |
---|---|
table |
Eine Tabelle, die gefiltert werden soll, indem ein linker Semijoin mit der als drittes Argument angegebenen Tabelle (indexColumnsTable) ausgeführt wird. Dies ist die Tabelle auf der linken Seite des linken Semijoins, sodass die zurückgegebene Tabelle dieselben Spalten wie diese Tabelle enthält, mit der Ausnahme, dass alle gemeinsamen Spalten der beiden Tabellen durch eine einzelne Indexspalte in der zurückgegebenen Tabelle ersetzt werden. |
indexColumnName |
Eine Zeichenfolge, die den Namen der Indexspalte angibt, die alle allgemeinen Spalten in den beiden Tabellen ersetzt, die als Argumente für diese Funktion bereitgestellt 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 einzelne Indexspalte in der von dieser Funktion zurückgegebenen Tabelle ersetzt. |
orderBy_expression |
Jeder DAX Ausdruck, in dem der Ergebniswert verwendet wird, um die gewünschte Sortierreihenfolge der IndexColumnsTable-Tabelle zum Generieren korrekter Indexwerte anzugeben. Die für die IndexColumnsTable-Tabelle angegebene Sortierreihenfolge definiert den Index jeder Zeile in der Tabelle, und dieser Index wird in der Tabelle verwendet, die zurückgegeben wird, um Kombinationen von Werten in der indexColumnsTable darzustellen, wie sie in der Tabelle angezeigt werden, die als erstes Argument für diese Funktion angegeben wird. |
order |
(Optional) Ein Wert, der angibt, wie orderBy_expression Werte, aufsteigend oder absteigend sortiert werden: Wert: Desc . Alternativer Wert: 0 (Null)/FALSE . Sortiert in absteigender Reihenfolge der Werte von orderBy_expression. Dies ist der Standardwert, wenn der Order-Parameter weggelassen wird.Wert: ASC . Alternativer Wert: 1 /TRUE . Legt die Rangfolge in aufsteigender Reihenfolge von orderBy_expression fest. |
Rückgabewert
Eine Tabelle, die nur die Werte enthält, die in der IndexColumnsTable-Tabelle vorhanden sind und eine Indexspalte anstelle aller Spalten enthält, die in der IndexColumnsTable-Tabelle vorhanden sind (nach Name).
Bemerkungen
Diese Funktion garantiert keine Ergebnissortierreihenfolge.
Diese Funktion wird für die Verwendung im DirectQuery-Modus nicht unterstützt, wenn sie in berechneten Spalten oder Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.