Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Kedua-dua dan ialah alat yang berkuasa untuk memanipulasi dan menganalisis data dalam pertanyaan DAX, tetapi ia mempunyai beberapa perbezaan utama yang penting untuk difahami.
Dalam blog ini, kami akan menyemak fungsi CALCULATETABLE dan pelan pertanyaannya dalam studio DAX , dan memahami cara ia berbeza daripada fungsi FILTER . Pada akhirnya, anda akan mempunyai pemahaman yang lebih baik tentang cara memilih fungsi yang sesuai untuk keperluan analisis data anda.
Untuk menunjukkan, kami akan menggunakan kod DAX di bawah.
Apabila anda menjalankan kod ini, anda akan mendapat jadual yang menunjukkan Jenama dan Warna.
Dalam tab Pelan Pertanyaan , anda akan mendapat kod yang sepadan dengan pengendali CrossApply dalam Enjin Formula .
Pada masa yang sama, anda dapat melihat bahawa kod itu hanya mendapatkan semula warna dan jenama produk dalam tab Pemasa Pelayan .
Isi kandungan
Keputusan Pemasa Pelayan DAX Studio Untuk BOLEH DIKIRA
Sebagai contoh, mari kita menapis warna produk untuk hanya menunjukkan Merah dan/atau Hitam.
Anda boleh melakukannya dengan menggunakan fungsi FILTER. Apabila anda menjalankannya, Pemasa Pelayan akan menunjukkan bahawa argumen FILTER tidak digunakan pada kod xmSQL .
Tetapi jika anda menggunakan fungsi CALCULATETABLE, pertanyaan dalam tab Pemasa Pelayan akan menunjukkan bahawa keputusan telah ditapis mengikut warna produk.
Pelan Pertanyaan BOLEH DIKIRA Dalam DAX Studio
Mari lihat Pelan Pertanyaan untuk setiap fungsi.
CALCULATETABLE berada pada baris pertama Rancangan Pertanyaan Logik kerana ia merupakan fungsi peringkat atas dalam kod dan oleh itu tidak bergantung pada sebarang keperluan.
Apabila anda membaca pelan pertanyaan bagi fungsi CALCULATETABLE, anda tidak bermula dengan hujah pertama. Anda perlu memahami konteks penapis yang digunakan terlebih dahulu. Jadi mari kita ke baris 5.
Anda boleh melihat bahawa pengendali VertiPaq memerlukan lajur warna produk kerana penapis yang digunakan. Ia kemudian mengimbas lajur ini dan menggunakan gabungan Penapis Not IsEmpty untuk menyemak warna produk pada setiap baris.
Selepas konteks penapis telah disediakan, hujah dilakukan.
Apabila difikirkan semula, jika anda menggunakan fungsi FILTER, anda akan melihat pelan pertanyaan yang berbeza, jadi hujah CROSSJOIN dilakukan sebelum mengenal pasti konteks penapis.
Kelemahan pendekatan ini ialah ia tidak menolak keadaan penapis ke Enjin Storan. Anda tidak akan dapat menggunakan klausa WHERE di dalam xmSQL yang akan meletakkan beban berat pada Enjin Formula.
Dan apabila anda bekerja dengan berbilang jadual, gabungan penapis bagi fungsi CROSSJOIN akan menjadi besar. Ini memperlahankan prestasi kod DAX. Oleh itu, dalam kebanyakan kes, adalah disyorkan untuk menggunakan fungsi CALCULATETABLE.
Jadi daripada melakukan semua pengiraan dalam Enjin Formula, anda boleh menyuntik keadaan penapis di dalam kelas WHERE kod XMSQL.
Peralihan Konteks Untuk Fungsi DAX Serupa
Masa Pelayan
Konsep ini juga boleh digunakan untuk fungsi CALCULATE. Mari gunakan kod DAX di bawah sebagai contoh.
Sukatan secara automatik mempunyai fungsi CALCULATE di sekelilingnya.
Apabila anda menjalankan kod ini, anda akan mendapat jadual yang menunjukkan jumlah Jumlah Jualan untuk setiap warna.
Dalam tab Pemasa Pelayan, anda boleh melihat bahawa kod sedang melaksanakan dua pertanyaan. Pertanyaan pertama adalah mengira jumlah amaun Jualan daripada jadual Jualan berkenaan dengan jadual Produk.
Sebaliknya, pertanyaan kedua mendapatkan semula warna produk daripada jadual Produk. Ia sepadan dengan fungsi dalam kod DAX.
Enjin Formula meletakkan cache data kedua-dua pertanyaan bersebelahan. Ia bermula dengan mendapatkan semula nilai daripada cache data kedua dan kemudian melakukan carian dalam cache data pertama.
Pelan Pertanyaan
Dalam tab Pelan Pertanyaan, Pelan Pertanyaan Logik mengimbas warna produk kerana hujah .
Kemudian, VertiPaq merumuskan jumlah Jumlah Jualan bergantung pada warna produk. Ia melakukan peralihan konteks yang menukar nilai warna produk kepada konteks penapis yang setara.
Penapis yang dibuat oleh peralihan konteks diterjemahkan ke dalam sifat DependOnCols dalam Pelan Pertanyaan. Selepas VertiPaq mengimbas lajur yang diperlukan untuk mengira Jumlah Jualan, ia mendarabkan Kuantiti Jualan dengan Harga Bersih.
Jumlah Jualan kemudiannya dikembalikan sebagai hasil dalam bentuk jenis data mata wang. Dan akhirnya, ADDCOLUMNS mengembalikan jadual dengan dua lajur yang mengandungi amaun Warna dan Jumlah Jualan.
Kesimpulan
Pelan pertanyaan boleh memberi kesan yang ketara pada prestasi pertanyaan, kerana pelan pertanyaan yang berbeza mungkin mempunyai tahap kecekapan yang berbeza.
Apabila menggunakan fungsi CALCULATETABLE dan FILTER dalam pertanyaan DAX, pelan pertanyaan mungkin berbeza bergantung pada senario tertentu dan pelbagai faktor, seperti ungkapan formula khusus yang digunakan dan keupayaan enjin pertanyaan.
Secara umum, adalah idea yang baik untuk menguji dan membandingkan prestasi pelan pertanyaan yang berbeza untuk menentukan pendekatan yang paling cekap untuk senario tertentu.
Semua yang terbaik,
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Anda akan belajar cara menyimpan dan memuatkan objek daripada fail .rds dalam R. Blog ini juga akan membincangkan cara mengimport objek dari R ke LuckyTemplates.
Dalam tutorial bahasa pengekodan DAX ini, pelajari cara menggunakan fungsi GENERATE dan cara menukar tajuk ukuran secara dinamik.
Tutorial ini akan merangkumi cara menggunakan teknik Visual Dinamik Berbilang Thread untuk mencipta cerapan daripada visualisasi data dinamik dalam laporan anda.
Dalam artikel ini, saya akan menjalankan konteks penapis. Konteks penapis ialah salah satu topik utama yang perlu dipelajari oleh mana-mana pengguna LuckyTemplates pada mulanya.
Saya ingin menunjukkan cara perkhidmatan dalam talian LuckyTemplates Apps boleh membantu dalam mengurus laporan dan cerapan berbeza yang dijana daripada pelbagai sumber.
Ketahui cara untuk menyelesaikan perubahan margin keuntungan anda menggunakan teknik seperti mengukur percabangan dan menggabungkan formula DAX dalam LuckyTemplates.
Tutorial ini akan membincangkan tentang idea pewujudan cache data dan cara ia mempengaruhi prestasi DAX dalam memberikan hasil.
Jika anda masih menggunakan Excel sehingga sekarang, maka inilah masa terbaik untuk mula menggunakan LuckyTemplates untuk keperluan pelaporan perniagaan anda.
Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu