RANKX 函數 (DAX)

針對 table 引數中的每個資料列,傳回數字清單中某個數字的次序。

語法

RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])

參數

  • table
    傳回資料表 (據以評估 expression) 的任何 DAX 運算式。

  • expression
    傳回單一純量值的任何 DAX 運算式。 系統會針對 table 的每個資料列評估此運算式,以便產生所有可能的次序值。 若要了解 expression 評估為 BLANK 時的函數行為,請參閱<備註>一節。

  • value
    (選擇性) 傳回單一純量值 (要尋找其次序) 的任何 DAX 運算式。 若要了解在 expression 中找不到 value 時的函數行為,請參閱<備註>一節。

    當您省略 value 參數時,系統就會改用目前資料列中 expression 的值。

  • order
    (選擇性) 指定如何排列 value 次序的值 (由低至高或由高至低):

    value

    替代值

    說明

    0 (零)

    FALSE

    以 expression 值的遞減順序排列次序。 如果 value 等於 expression 中的最高數字,則 RANKX 會傳回 1。

    這是省略 order 參數時的預設值。

    1

    TRUE

    以 expression 的遞增順序排列次序。 如果 value 等於 expression 中的最低數字,則 RANKX 會傳回 1。

  • ties
    (選擇性) 定義存在繫結時如何判斷次序的列舉。

    列舉型別

    說明

    Skip

    繫結之後,下一個次序值是繫結的次序值再加上繫結值的計數。 例如,如果五個 (5) 值與次序 11 繫結,則下一個值將會收到次序 16 (11 + 5)。

    這是省略 ties 參數時的預設值。

    Dense

    繫結之後,下一個次序值就是下一個次序值。 例如,如果五個 (5) 值與次序 11 繫結,則下一個值將會收到次序 12。

傳回值

在針對 table 數字之所有資料列評估的 expression 所有可能值之間,value 的次序數字。

備註

  • 如果 expression 或 value 評估為 BLANK,它就會被視為 0 (零),代表產生數字的所有運算式,或被視為空白文字,代表所有文字運算式。

  • 如果 value 不在 expression 的所有可能值之間,則 RANKX 會暫時將 value 加入至 expression 中的值,然後重新評估 RANKX 以便判斷 value 的正確次序。

  • 您可以在引數清單中放置空白逗號 (,),藉以略過選擇性引數,亦即 RANKX(Inventory, [InventoryCost],,,"Dense")

範例

Products 資料表中的下列導出資料行會計算每項產品在網際網路通路中的銷售量次序。

=RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))