次の方法で共有


RANKX

適用対象: 計算列計算テーブルメジャービジュアル計算

table 引数の各行の数値リスト内の数値のランク付けを返します。

構文

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

パラメーター

table 式が評価されるデータのテーブルを返す任意の DAX 式です。

expression 1 つのスカラー値を返す任意の DAX 式です。 式は、ランク付けに使用できるすべての値を生成するために、tableの各行に対して評価されます。 expression が BLANKに評価されたときの関数の動作を理解するには、「解説」セクションを参照してください。

value (省略可能) ランクが見つかる 1 つのスカラー値を返す任意の DAX 式。 式に value が見つからない場合の関数の動作については、「解説」セクションを参照してください。

value パラメーターを省略すると、代わりに現在の行の式の値が使用されます。

order (省略可能) value、低から高、低の順にランク付けする方法を指定する値。

価値 代替値 説明
0 (ゼロ) FALSE 式の値の降順でランク付けします。 値が式の中で最も大きい数値と等しい場合、RANKX は 1 を返します。

order パラメーターを省略した場合の既定値です。
1 TRUE 式の昇順で順位付けます。 値が式の中で最も小さい数値と等しい場合、RANKX は 1 を返します。

ties (省略可能) タイがある場合にランク付けを決定する方法を定義する列挙体。

列挙体 説明
Skip タイの後の次のランク値は、タイのランク値に、関連付けられた値の数を加えた値です。 たとえば、5 つの (5) 値がランク 11 に関連付けられている場合、次の値は 16 (11 + 5) のランクを受け取ります。

これは、パラメーター ties 省略した場合の既定値です。
Dense タイの後の次のランク値は、次のランク値です。 たとえば、5 つの値がランク 11 に関連付けられている場合、次の値は 12 のランクを受け取ります。

戻り値

table 数値のすべての行に対して評価される expression の使用可能なすべての値の中の value のランク番号。

解説

  • expression または value が BLANK に評価された場合は、数値になるすべての式に対して 0 (ゼロ) として、またはすべてのテキスト式の空のテキストとして扱われます。

  • valueexpression のすべての可能な値の中にない場合は、RANKXexpression の値に一時的に value を追加し、valueの適切なランクを決定するために RANKX を再評価します。

  • 省略可能な引数は、引数リストに空のコンマ (,) を配置することによってスキップされる場合があります (例: RANKX(Inventory, [InventoryCost],,,"Dense"))。

  • 10 進数 データ型の値間の等値関連の比較 (=<>>=、および <=) RANKX 関数を使用すると、予期しない結果が返される可能性があります。 10 進数 データ型の値が IEEE Standard 754 浮動小数点数として格納され、その精度に固有の制限があるため、正しくない結果が発生する可能性があります。 予期しない結果を回避するには、データ型を固定 10 進数 に変更するか、を使用して強制的に丸めます。

  • この関数は、計算列または行レベル セキュリティ (RLS) 規則で使用する場合、DirectQuery モードでは使用できません。

Products テーブルの次の計算列は、インターネット チャネルの各製品の売上ランキングを計算します。

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