Acara
Bergabunglah dengan kami di FabCon Vegas
31 Mar, 23 - 2 Apr, 23
Acara utama yang dipimpin komunitas Microsoft Fabric, Power BI, SQL, dan AI. 31 Maret hingga 2 April 2025.
Daftar hari iniBrowser ini sudah tidak didukung.
Mutakhirkan ke Microsoft Edge untuk memanfaatkan fitur, pembaruan keamanan, dan dukungan teknis terkini.
Berlaku untuk: kolom terhitungTabel terhitungUkurPerhitungan visual
Mengembalikan nilai saat ini dari kolom yang ditentukan dalam lulus evaluasi luar dari kolom yang disebutkan.
EARLIER berguna untuk perhitungan berlapis di mana Anda ingin menggunakan nilai tertentu sebagai input dan menghasilkan perhitungan berdasarkan input tersebut. Di Microsoft Excel, Anda hanya bisa melakukan penghitungan tersebut dalam konteks baris saat ini; namun, di DAX Anda dapat menyimpan nilai input dan kemudian membuat perhitungan menggunakan data dari seluruh tabel.
EARLIER sebagian besar digunakan dalam konteks kolom terhitung.
EARLIER(<column>, <number>)
Istilah | Definisi |
---|---|
column |
Kolom atau ekspresi yang diselesaikan ke kolom. |
num |
(Opsional) Angka positif ke lolos evaluasi luar. Tingkat evaluasi berikutnya keluar diwakili oleh 1; dua tingkat keluar diwakili oleh 2 dan seterusnya. Ketika nilai default yang dihilangkan adalah 1. |
Nilai baris saat ini, dari column
, pada number
lolos evaluasi luar.
Deskripsi kesalahan
EARLIER
berhasil jika ada konteks baris sebelum awal pemindaian tabel. Jika tidak, kesalahan akan ditampilkan.
Performa EARLIER
mungkin lambat karena secara teoritis, mungkin harus melakukan sejumlah operasi yang mendekati jumlah total baris (dalam kolom) kali angka yang sama (tergantung pada sintaks ekspresi). Misalnya jika Anda memiliki 10 baris di kolom, sekitar 100 operasi dapat diperlukan; jika Anda memiliki 100 baris, maka mendekati 10.000 operasi mungkin dilakukan.
Fungsi ini tidak didukung untuk digunakan dalam mode DirectQuery saat digunakan dalam kolom terhitung atau aturan keamanan tingkat baris (RLS).
Catatan
Dalam praktiknya, mesin analitik dalam memori VertiPaq melakukan pengoptimalan untuk mengurangi jumlah perhitungan aktual, tetapi Anda harus berhati-hati saat membuat rumus yang melibatkan rekursi.
Untuk mengilustrasikan penggunaan EARLIER, perlu untuk membangun skenario yang menghitung nilai peringkat lalu menggunakan nilai peringkat tersebut dalam perhitungan lain.
Contoh berikut didasarkan pada tabel sederhana ini, ProductSubcategory
, yang menunjukkan total penjualan untuk setiap ProductSubcategory.
Tabel akhir, termasuk kolom peringkat diperlihatkan di sini.
ProductSubcategoryKey | EnglishProductSubcategoryName | TotalSubcategorySales | SubkataanRanking |
---|---|---|---|
18 | Bib-Shorts | $156.167,88 | 18 |
26 | Rak Sepeda | $220.720,70 | 14 |
27 | Stan Sepeda | $35.628,69 | 30 |
28 | Botol dan Kandang | $59.342,43 | 24 |
5 | Kurung Bawah | $48.643,47 | 27 |
6 | Rem | $62,113.16 | 23 |
19 | Topi | $47.934,54 | 28 |
7 | Rantai | $8.847,08 | 35 |
29 | Pembersih | $16.882,62 | 32 |
8 | Crankset | $191.522,09 | 15 |
9 | Derailleurs | $64.965,33 | 22 |
30 | Fender | $41.974,10 | 29 |
10 | Forks | $74.727,66 | 21 |
20 | Sarung tangan | $228.353,58 | 12 |
4 | Setang | $163.257,06 | 17 |
11 | Headset | $57.659,99 | 25 |
31 | Helm | $451.192,31 | 9 |
32 | Paket Hidrasi | $96.893,78 | 20 |
21 | Kaus | $699.429,78 | 7 |
33 | Lampu | 36 | |
34 | Kunci | $15.059,47 | 33 |
1 | Sepeda Gunung | $34.305.864,29 | 2 |
12 | Bingkai Gunung | $4.511.170,68 | 4 |
35 | Panniers | 36 | |
13 | Pedal | $140.422,20 | 19 |
36 | Pompa | $12.695,18 | 34 |
2 | Sepeda Jalanan | $40.551.696,34 | 1 |
14 | Bingkai Jalan | $3.636.398,71 | 5 |
15 | Pelana | $52.526,47 | 26 |
22 | Celana pendek | $385.707,80 | 10 |
23 | Kaus kaki | $28.337,85 | 31 |
24 | Stoking | $189.179,37 | 16 |
37 | Ban dan Tabung | $224.832,81 | 13 |
3 | Sepeda Touring | $13.334.864,18 | 3 |
16 | Bingkai Touring | $1.545.344,02 | 6 |
25 | Rompi | $240,990.04 | 11 |
17 | Roda | $648.240,04 | 8 |
Salah satu cara untuk mendapatkan nilai peringkat untuk nilai tertentu dalam baris adalah dengan menghitung jumlah baris, dalam tabel yang sama, yang memiliki nilai lebih besar (atau lebih kecil) daripada yang sedang dibandingkan. Teknik ini mengembalikan nilai kosong atau nol untuk nilai tertinggi dalam tabel, sedangkan nilai yang sama akan memiliki nilai peringkat yang sama dan nilai berikutnya (setelah nilai yang sama) akan memiliki nilai peringkat non berturut-turut. Lihat sampel di bawah ini.
Kolom terhitung baru, SubCategorySalesRanking, dibuat dengan menggunakan rumus berikut.
= COUNTROWS(FILTER(ProductSubcategory, EARLIER(ProductSubcategory[TotalSubcategorySales])<ProductSubcategory[TotalSubcategorySales]))+1
Langkah-langkah berikut menjelaskan metode penghitungan secara lebih rinci.
Fungsi
EARLIER([TotalSubcategorySales])
mengevaluasi ke $156.167,88, baris saat ini di perulangan luar.
Fungsi FILTER
sekarang mengembalikan tabel di mana semua baris memiliki nilai TotalSubcategorySales lebih besar dari $156.167,88 (yang merupakan nilai saat ini untuk EARLIER
).
Fungsi COUNTROWS
menghitung baris tabel yang difilter dan menetapkan nilai tersebut ke kolom terhitung baru di baris saat ini ditambah 1. Menambahkan 1 diperlukan untuk mencegah nilai peringkat teratas menjadi Kosong.
Rumus kolom terhitung berpindah ke baris berikutnya dan mengulangi langkah 1 hingga 4. Langkah-langkah ini diulang hingga akhir tabel tercapai.
Fungsi EARLIER
akan selalu mendapatkan nilai kolom sebelum operasi tabel saat ini. Jika Anda perlu mendapatkan nilai dari perulangan sebelum itu, atur argumen kedua ke 2.
fungsi EARLIEST
Acara
Bergabunglah dengan kami di FabCon Vegas
31 Mar, 23 - 2 Apr, 23
Acara utama yang dipimpin komunitas Microsoft Fabric, Power BI, SQL, dan AI. 31 Maret hingga 2 April 2025.
Daftar hari ini