Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Kolom terhitung
Tabel
terhitungUkur
Perhitungan visual
Mengembalikan peringkat unik untuk konteks saat ini dalam partisi yang ditentukan, diurutkan menurut urutan yang ditentukan. Jika kecocokan tidak dapat ditemukan, maka rownumber kosong.
Sintaks
ROWNUMBER ( [<relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )
Parameter
| Istilah | Definisi |
|---|---|
relation |
(Opsional) Ekspresi tabel tempat baris output dikembalikan. Jika digunakan dalam perhitungan visual, parameter ini menerima sumbu dalam bentuk visual.
Jika ditentukan, semua kolom di orderBy dan partitionBy harus berasal darinya.
Jika dihilangkan: - orderBy harus ditentukan secara eksplisit.- Semua kolom orderBy dan partitionBy harus sepenuhnya memenuhi syarat dan berasal dari satu tabel.
- Default ke ALLSELECTED() dari semua kolom di orderBy dan partitionBy. |
orderBy |
(Opsional) Klausa ORDERBY() yang berisi kolom yang menentukan bagaimana setiap partisi diurutkan.
Jika dihilangkan: - relation harus ditentukan secara eksplisit.
- Default untuk mengurutkan menurut setiap kolom di relation yang belum ditentukan dalam partitionBy. |
blanks |
(Opsional) Enumerasi yang menentukan cara menangani nilai kosong saat mengurutkan relation atau axis.
Nilai yang didukung adalah:
|
partitionBy |
(Opsional) Klausa relation diperlakukan sebagai partisi tunggal. |
matchBy |
(Opsional) Klausa |
reset |
(Opsional) Hanya tersedia dalam perhitungan visual. Menunjukkan apakah perhitungan diatur ulang, dan pada tingkat hierarki kolom bentuk visual mana. Nilai yang diterima adalah: referensi bidang ke kolom dalam bentuk visual saat ini, NONE (default), LOWESTPARENT, HIGHESTPARENT, atau bilangan bulat. Perilaku tergantung pada tanda bilangan bulat: - Jika nol atau dihilangkan, perhitungan tidak direset. Setara dengan NONE.
- Jika positif, bilangan bulat mengidentifikasi kolom mulai dari biji-bijian tertinggi dan independen. HIGHESTPARENT setara dengan 1.
- Jika negatif, bilangan bulat mengidentifikasi kolom mulai dari terendah, relatif terhadap butir saat ini. LOWESTPARENT setara dengan -1. |
Mengembalikan nilai
Nomor rownumber untuk konteks saat ini.
Keterangan
Setiap kolom orderBy, partitionBy, dan matchBy harus memiliki nilai luar yang sesuai untuk membantu menentukan baris saat ini untuk dioperasikan, dengan perilaku berikut:
- Jika ada tepat satu kolom luar yang sesuai, nilainya akan digunakan.
- Jika tidak ada kolom luar yang sesuai, maka:
-
ROWNUMBER pertama-tama akan menentukan semua kolom
orderBy,partitionBy, danmatchByyang tidak memiliki kolom luar yang sesuai. - Untuk setiap kombinasi nilai yang ada untuk kolom ini dalam konteks induk ROWNUMBER, ROWNUMBER dievaluasi dan baris dikembalikan.
- ROWNUMBERoutput akhir adalah persatuan baris ini.
-
ROWNUMBER pertama-tama akan menentukan semua kolom
- Jika ada lebih dari satu kolom luar yang sesuai, kesalahan akan ditampilkan.
Jika matchBy ada, ROWNUMBER akan mencoba menggunakan kolom di matchBy dan partitionBy untuk mengidenfitas baris saat ini.
Jika kolom yang ditentukan dalam orderBy dan partitionBy tidak dapat mengidentifikasi setiap baris secara unik dalam relation, maka:
- ROWNUMBER akan mencoba menemukan jumlah kolom tambahan paling sedikit yang diperlukan untuk mengidentifikasi setiap baris secara unik.
- Jika kolom tersebut dapat ditemukan, ROWNUMBER akan
- Cobalah untuk menemukan jumlah kolom tambahan paling sedikit yang diperlukan untuk mengidentifikasi setiap baris secara unik.
- Tambahkan kolom baru ini secara otomatis ke klausa
orderBy. - Urutkan setiap partisi menggunakan kumpulan kolom orderBy baru ini.
- Jika kolom tersebut tidak dapat ditemukan dan fungsi mendeteksi dasi saat runtime, kesalahan akan ditampilkan.
reset hanya dapat digunakan dalam perhitungan visual, dan tidak dapat digunakan dalam kombinasi dengan orderBy atau partitionBy. Jika reset ada, axis dapat ditentukan tetapi relation tidak dapat.
Jika nilainya absolut (yaitu, bilangan reset bulat positif, HIGHESTPARENT atau referensi bidang) dan perhitungan dievaluasi pada atau di atas tingkat target dalam hierarki, perhitungan diatur ulang untuk setiap elemen individu. Artinya, fungsi dievaluasi dalam partisi yang hanya berisi elemen tertentu.
Contoh 1 - kolom terhitung
Kueri DAX berikut ini:
EVALUATE
ADDCOLUMNS(
'DimGeography',
"UniqueRank",
ROWNUMBER(
'DimGeography',
ORDERBY(
'DimGeography'[StateProvinceName], desc,
'DimGeography'[City], asc),
PARTITIONBY(
'DimGeography'[EnglishCountryRegionName])))
ORDER BY [EnglishCountryRegionName] asc, [StateProvinceName] desc, [City] asc
Mengembalikan tabel yang secara unik memberi peringkat setiap geografi dengan EnglishCountryRegionName yang sama, menurut StateProvinceName dan City mereka.
Contoh 2 - perhitungan visual
Penghitungan visual berikut DAX kueri:
SalesRankWithinYear = ROWNUMBER(ORDERBY([SalesAmount], DESC), PARTITIONBY([CalendarYear]))
SalesRankAllHistory = ROWNUMBER(ORDERBY([SalesAmount], DESC))
Buat dua kolom yang secara unik memberi peringkat setiap bulan berdasarkan total penjualan, baik dalam setiap tahun, dan seluruh riwayat.
Cuplikan layar di bawah ini memperlihatkan matriks visual dan ekspresi perhitungan visual pertama: