Bagikan melalui


RANKX

Berlaku untuk: kolom terhitungTabel terhitungUkurPerhitungan visual

Mengembalikan peringkat angka dalam daftar angka untuk setiap baris dalam argumen table.

Sintaks

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

Parameter

table Ekspresi DAX apa pun yang mengembalikan tabel data tempat ekspresi dievaluasi.

expression Ekspresi DAX apa pun yang mengembalikan nilai skalar tunggal. Ekspresi dievaluasi untuk setiap baris table, untuk menghasilkan semua nilai yang mungkin untuk peringkat. Lihat bagian keterangan untuk memahami perilaku fungsi saat expression mengevaluasi ke BLANK.

value (Opsional) Ekspresi DAX apa pun yang mengembalikan nilai skalar tunggal yang peringkatnya akan ditemukan. Lihat bagian keterangan untuk memahami perilaku fungsi saat value tidak ditemukan dalam ekspresi.

Saat parameter value dihilangkan, nilai ekspresi pada baris saat ini digunakan sebagai gantinya.

order (Opsional) Nilai yang menentukan cara memberi peringkat value, rendah ke tinggi atau tinggi ke rendah:

nilai nilai alternatif Deskripsi
0 (nol) FALSE Peringkat dalam urutan menurun dari nilai ekspresi. Jika nilai sama dengan angka tertinggi dalam ekspresi, maka RANKX mengembalikan 1.

Ini adalah nilai default ketika parameter pesanan dihilangkan.
1 TRUE Peringkat dalam urutan ekspresi naik. Jika nilai sama dengan angka terendah dalam ekspresi, maka RANKX mengembalikan 1.

ties (Opsional) Enumerasi yang menentukan cara menentukan peringkat ketika ada ikatan.

Enumerasi Deskripsi
Skip Nilai peringkat berikutnya, setelah dasi, adalah nilai peringkat dasi ditambah jumlah nilai terikat. Misalnya jika lima (5) nilai diikat dengan peringkat 11 maka nilai berikutnya akan menerima peringkat 16 (11 + 5).

Ini adalah nilai default ketika parameter ties dihilangkan.
Dense Nilai peringkat berikutnya, setelah dasi, adalah nilai peringkat berikutnya. Misalnya jika lima (5) nilai diikat dengan peringkat 11 maka nilai berikutnya akan menerima peringkat 12.

Mengembalikan nilai

Jumlah peringkat value di antara semua nilai expression yang mungkin dievaluasi untuk semua baris angka table.

Keterangan

  • Jika expression atau value mengevaluasi untuk BLANK diperlakukan sebagai 0 (nol) untuk semua ekspresi yang menghasilkan angka, atau sebagai teks kosong untuk semua ekspresi teks.

  • Jika value bukan di antara semua nilai expression yang mungkin maka RANKX menambahkan value sementara ke nilai dari expression dan mengevaluasi kembali RANKX untuk menentukan peringkat valueyang tepat.

  • Argumen opsional mungkin dilewati dengan menempatkan koma kosong (,) dalam daftar argumen, seperti RANKX(Inventory, [InventoryCost],,,"Dense").

  • Perbandingan terkait kesetaraan (, , , dan ) antara nilai dengan jenis data Angka Desimal berpotensi mengembalikan hasil yang tidak terduga saat menggunakan fungsi . Hasil yang salah dapat terjadi karena nilai dengan tipe data Angka Desimal disimpan sebagai angka titik mengambang IEEE Standard 754 dan memiliki batasan yang melekat dalam presisinya. Untuk menghindari hasil yang tidak terduga, ubah jenis data menjadi Angka Desimal Tetap atau lakukan pembulatan paksa menggunakan ROUND.

  • Fungsi ini tidak didukung untuk digunakan dalam mode DirectQuery saat digunakan dalam kolom terhitung atau aturan keamanan tingkat baris (RLS).

Contoh

Kolom terhitung berikut dalam tabel Produk menghitung peringkat penjualan untuk setiap produk di saluran Internet.

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