SUBSTITUTEWITHINDEX
傳回資料表,其代表提供作為引數的兩個資料表左方半聯結。 此半聯結是使用由通用資料行名稱和通用資料類型所決定的通用資料行來執行。 所聯結資料行會取代為傳回資料表中具有整數類型並包含索引的單一資料行。 索引是已指定排序次序的右方聯結資料表參考。
所提供右側/第二個資料表中的資料行若不存在於所提供左側/第一個資料表中,則不會包含在傳回的資料表中,也不會用來進行聯結。
索引會從 0 開始 (以 0 為基底),並在提供的右側/第二個聯結資料表中每次增加額外資料列時遞增一。 索引會以右側/第二個聯結資料表指定的排序次序為依據。
語法
SUBSTITUTEWITHINDEX(<table>, <indexColumnName>, <indexColumnsTable>, [<orderBy_expression>, [<order>][, <orderBy_expression>, [<order>]]…])
參數
詞彙 | [定義] |
---|---|
table | 要篩選的資料表,其藉由針對指定為第三個引數的資料表 (indexColumnsTable) 來執行左方半聯結。 這是位於左方半聯結左邊的資料表,因此所傳回資料表會包含與此資料表相同的資料行,但這兩個資料表的所有通用資料行則會取代為所傳回資料表中單一索引資料行。 |
indexColumnName | 指定索引資料行名稱的字串,該資料行會取代作為引數提供給此函式的兩個資料表中所有通用資料行。 |
indexColumnsTable | 左方半聯結的第二個資料表。 這是左方半聯結右邊的資料表。 該函式只會傳回出現在此資料表中的值。 此外,此資料表的資料行 (依資料行名稱) 會取代為此函式所傳回資料表中單一索引資料行。 |
orderBy_expression | 任何 DAX 運算式,其結果值會用來指定 indexColumnsTable 資料表所需的排序次序,以便產生正確的索引值。 針對 indexColumnsTable 資料表所指定排序次序會定義資料表中每個資料列的索引,而該索引會在所傳回資料表中用來代表 indexColumnsTable 中的值組合,因為這些值會出現在提供作為此函式第一個引數的資料表中。 |
訂單 | (選擇性) 指定如何排序 orderBy_expression 值 (遞增或遞減) 的值: 值:Desc。 替代值:0(零)/FALSE。 依 orderBy_expression 的值以遞減順序排序。 這是省略 order 參數時的預設值。 值:ASC。 替代值:1/TRUE。 依 orderBy_expression 的遞增順序排名。 |
傳回值
資料表,其中只包含出現在 indexColumnsTable 資料表中的值,且會包含索引資料行,而不是 (依名稱) 出現在 indexColumnsTable 資料表中的所有資料行。
備註
此函式不保證任何結果排序次序。
在計算結果欄或資料列層級安全性 (RLS) 規則中使用時,不支援在 DirectQuery 模式中使用此函式。