TopSum (DMX)
Berlaku untuk: SQL Server Analysis Services
Mengembalikan, dalam urutan penurunan peringkat, baris terbanyak teratas tabel yang total kumulatifnya setidaknya merupakan nilai yang ditentukan.
Sintaks
TopSum(<table expression>, <rank expression>, <sum>)
Berlaku Untuk
Ekspresi yang mengembalikan tabel, seperti <referensi> kolom tabel, atau fungsi yang mengembalikan tabel.
Jenis Hasil
<ekspresi tabel>
Keterangan
Fungsi TopSum mengembalikan baris terbanyak dalam urutan penurunan peringkat berdasarkan nilai yang dievaluasi dari <argumen ekspresi> peringkat untuk setiap baris, sehingga jumlah <nilai ekspresi> peringkat setidaknya merupakan total yang diberikan yang ditentukan oleh <argumen jumlah> . TopSum mengembalikan jumlah elemen terkecil yang mungkin saat masih memenuhi nilai jumlah yang ditentukan.
Contoh
Contoh berikut membuat kueri prediksi terhadap model Asosiasi yang Anda buat dengan menggunakan Tutorial Penggalian Data Dasar.
Untuk memahami cara kerja TopPercent, mungkin berguna untuk terlebih dahulu menjalankan kueri prediksi yang hanya mengembalikan tabel berlapis.
SELECT Predict ([Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 10)
FROM
[Association]
NATURAL PREDICTION JOIN
SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t
Catatan
Dalam contoh ini, nilai yang disediakan sebagai input berisi tanda kutip tunggal, dan oleh karena itu harus lolos dengan prefacing dengan tanda kutip tunggal lainnya. Jika Anda tidak yakin dengan sintaks untuk menyisipkan karakter escape, Anda bisa menggunakan Penyusun Kueri Prediksi untuk membuat kueri. Saat Anda memilih nilai dari daftar dropdown, karakter escape yang diperlukan disisipkan untuk Anda. Untuk informasi selengkapnya, lihat Membuat Kueri Singleton di Perancang Penggalian Data.
Contoh hasil:
Model | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
---|---|---|---|
Olahraga-100 | 4334 | 0.291283016 | 0.252695851 |
Botol Air | 2866 | 0.192620472 | 0.175205052 |
Kit patch | 2113 | 0.142012232 | 0.132389356 |
Tabung Ban Gunung | 1992 | 0.133879965 | 0.125304948 |
Mountain-200 | 1755 | 0.117951475 | 0.111260823 |
Tabung Ban Jalan | 1588 | 0.106727603 | 0.101229538 |
Tutup Bersepeda | 1473 | 0.098998589 | 0.094256014 |
Set Fender - Gunung | 1415 | 0.095100477 | 0.090718432 |
Sangkar Botol Sepeda Gunung | 1367 | 0.091874454 | 0.087780332 |
Sangkar Botol Sepeda Jalan Raya | 1195 | 0.080314537 | 0.077173962 |
Fungsi TopSum mengambil hasil kueri ini dan mengembalikan baris dengan nilai terbesar yang menjumlahkan ke jumlah yang ditentukan.
SELECT
TopSum
(
Predict([Association].[v Assoc Seq Line Items],INCLUDE_STATISTICS,10),
$PROBABILITY,
.5)
FROM
[Association]
NATURAL PREDICTION JOIN
(SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t
Argumen pertama ke fungsi TopSum adalah nama kolom tabel. Dalam contoh ini, tabel berlapis dikembalikan dengan memanggil fungsi Predict dan menggunakan argumen INCLUDE_STATISTICS.
Argumen kedua ke fungsi TopSum adalah kolom dalam tabel berlapis yang Anda gunakan untuk mengurutkan hasilnya. Dalam contoh ini, opsi INCLUDE_STATISTICS mengembalikan kolom $SUPPORT, $PROBABILTY, dan proBABILITAS $ADJUSTED. Contoh ini menggunakan $PROBABILITY untuk mengembalikan baris yang menjumlahkan setidaknya 50% probabilitas.
Argumen ketiga ke fungsi TopSum menentukan jumlah target, sebagai ganda. Untuk mendapatkan baris untuk produk teratas yang jumlahnya hingga 50 persen probabilitas, Anda mengetik .5.
Contoh hasil:
Model | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
---|---|---|---|
Olahraga-100 | 4334 | 0.29... | 0.25... |
Botol Air | 2866 | 0.19... | 0.17... |
Kit patch | 2113 | 0.14... | 0.13... |
Catatan Contoh ini disediakan hanya untuk mengilustrasikan penggunaan TopSum. Bergantung pada ukuran himpunan data Anda, kueri ini mungkin membutuhkan waktu lama untuk dijalankan.