SUMMARIZE
Berlaku untuk: kolom terhitungTabel terhitung
Ukur
Perhitungan visual
Mengembalikan tabel ringkasan untuk total yang diminta melalui sekumpulan grup.
Sintaks
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
Parameter
Term | Definisi |
---|---|
table |
Ekspresi DAX apa pun yang mengembalikan tabel data. |
groupBy_ColumnName |
(Opsional) Nama yang memenuhi syarat dari kolom yang ada yang digunakan untuk membuat grup ringkasan berdasarkan nilai yang ditemukan di dalamnya. Parameter ini tidak boleh berupa ekspresi. |
name |
Nama yang diberikan ke kolom total atau ringkasan, diapit dalam tanda kutip ganda. |
expression |
Ekspresi DAX apa pun yang mengembalikan nilai skalar tunggal, di mana ekspresi akan dievaluasi beberapa kali (untuk setiap baris/konteks). |
Mengembalikan nilai
Tabel dengan kolom yang dipilih untuk argumen groupBy_columnName
dan kolom ringkasan yang dirancang oleh argumen nama.
Keterangan
Setiap kolom yang Anda tentukan namanya harus memiliki ekspresi yang sesuai; jika tidak, kesalahan dikembalikan. Argumen pertama, nama, menentukan nama kolom dalam hasil. Argumen kedua, ekspresi, menentukan perhitungan yang dilakukan untuk mendapatkan nilai untuk setiap baris di kolom tersebut.
groupBy_columnName harus berada di
table
atau dalam tabel terkait untuktable
.Setiap nama harus diapit dalam tanda kutip ganda.
Fungsi ini mengelompokkan sekumpulan baris yang dipilih ke dalam sekumpulan baris ringkasan berdasarkan nilai satu atau beberapa kolom groupBy_columnName. Satu baris dikembalikan untuk setiap grup.
Fungsi ini tidak didukung untuk digunakan dalam mode DirectQuery saat digunakan dalam kolom terhitung atau aturan keamanan tingkat baris (RLS).
Contoh
Contoh berikut mengembalikan ringkasan penjualan penjual yang dikelompokkan sekitar tahun kalender dan nama kategori produk, tabel hasil ini memungkinkan Anda melakukan analisis atas penjualan penjual berdasarkan tahun dan kategori produk.
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Tabel berikut ini memperlihatkan pratinjau data seperti yang akan diterima oleh fungsi apa pun yang mengharapkan untuk menerima tabel:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Jumlah Penjualan (USD)] | [Jumlah Diskon (USD)] |
---|---|---|---|
2008 | Sepeda | 12968255.42 | 36167.6592 |
2005 | Sepeda | 6958251.043 | 4231.1621 |
2006 | Sepeda | 18901351.08 | 178175.8399 |
2007 | Sepeda | 24256817.5 | 276065.992 |
2008 | Komponen | 2008052.706 | 39.9266 |
2005 | Komponen | 574256.9865 | 0 |
2006 | Komponen | 3428213.05 | 948.7674 |
2007 | Komponen | 5195315.216 | 4226.0444 |
2008 | Pakaian | 366507.844 | 4151.1235 |
2005 | Pakaian | 31851.1628 | 90.9593 |
2006 | Pakaian | 455730.9729 | 4233.039 |
2007 | Pakaian | 815853.2868 | 12489.3835 |
2008 | Aksesori | 153299.924 | 865.5945 |
2005 | Aksesori | 18594.4782 | 4.293 |
2006 | Aksesori | 86612.7463 | 1061.4872 |
2007 | Aksesori | 275794.8403 | 4756.6546 |
Dengan ROLLUP
Penambahan sintaks ROLLUP memodifikasi perilaku fungsi SUMMARIZE dengan menambahkan baris rollup ke hasil pada kolom groupBy_columnName. ROLLUP hanya dapat digunakan dalam ekspresi SUMMARIZE.
Contoh
Contoh berikut menambahkan baris rollup ke kolom Group-By panggilan fungsi SUMMARIZE:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Mengembalikan tabel berikut,
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Jumlah Penjualan (USD)] | [Jumlah Diskon (USD)] |
---|---|---|---|
2008 | Sepeda | 12968255.42 | 36167.6592 |
2005 | Sepeda | 6958251.043 | 4231.1621 |
2006 | Sepeda | 18901351.08 | 178175.8399 |
2007 | Sepeda | 24256817.5 | 276065.992 |
2008 | Komponen | 2008052.706 | 39.9266 |
2005 | Komponen | 574256.9865 | 0 |
2006 | Komponen | 3428213.05 | 948.7674 |
2007 | Komponen | 5195315.216 | 4226.0444 |
2008 | Pakaian | 366507.844 | 4151.1235 |
2005 | Pakaian | 31851.1628 | 90.9593 |
2006 | Pakaian | 455730.9729 | 4233.039 |
2007 | Pakaian | 815853.2868 | 12489.3835 |
2008 | Aksesori | 153299.924 | 865.5945 |
2005 | Aksesori | 18594.4782 | 4.293 |
2006 | Aksesori | 86612.7463 | 1061.4872 |
2007 | Aksesori | 275794.8403 | 4756.6546 |
2008 | 15496115.89 | 41224.3038 | |
2005 | 7582953.67 | 4326.4144 | |
2006 | 22871907.85 | 184419.1335 | |
2007 | 30543780.84 | 297538.0745 | |
76494758.25 | 527507.9262 |
Dengan ROLLUPGROUP
Penambahan ROLLUPGROUP di dalam sintaks ROLLUP dapat digunakan untuk mencegah subtotal parsial dalam baris rollup. ROLLUPGROUP hanya dapat digunakan dalam ekspresi ROLLUP, ROLLUPADDISSUBTOTAL, atau ROLLUPISSUBTOTAL.
Contoh
Contoh berikut hanya menunjukkan total keseluruhan semua tahun dan kategori tanpa subtotal setiap tahun dengan semua kategori:
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Mengembalikan tabel berikut,
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Jumlah Penjualan (USD)] | [Jumlah Diskon (USD)] |
---|---|---|---|
2008 | Sepeda | 12968255.42 | 36167.6592 |
2005 | Sepeda | 6958251.043 | 4231.1621 |
2006 | Sepeda | 18901351.08 | 178175.8399 |
2007 | Sepeda | 24256817.5 | 276065.992 |
2008 | Komponen | 2008052.706 | 39.9266 |
2005 | Komponen | 574256.9865 | 0 |
2006 | Komponen | 3428213.05 | 948.7674 |
2007 | Komponen | 5195315.216 | 4226.0444 |
2008 | Pakaian | 366507.844 | 4151.1235 |
2005 | Pakaian | 31851.1628 | 90.9593 |
2006 | Pakaian | 455730.9729 | 4233.039 |
2007 | Pakaian | 815853.2868 | 12489.3835 |
2008 | Aksesori | 153299.924 | 865.5945 |
2005 | Aksesori | 18594.4782 | 4.293 |
2006 | Aksesori | 86612.7463 | 1061.4872 |
2007 | Aksesori | 275794.8403 | 4756.6546 |
76494758.25 | 527507.9262 |
Dengan ISSUBTOTAL
Dengan ISSUBTOTAL, Anda dapat membuat kolom lain dalam ekspresi SUMMARIZE yang mengembalikan True jika baris berisi nilai subtotal untuk kolom yang diberikan sebagai argumen untuk ISSUBTOTAL, jika tidak mengembalikan False. ISSUBTOTAL hanya dapat digunakan dalam ekspresi SUMMARIZE.
Contoh
Sampel berikut menghasilkan kolom ISSUBTOTAL untuk setiap kolom ROLLUP dalam panggilan fungsi SUMMARIZE yang diberikan:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
, "Is Sub Total for DateTimeCalendarYear", ISSUBTOTAL(DateTime[CalendarYear])
, "Is Sub Total for ProductCategoryName", ISSUBTOTAL(ProductCategory[ProductCategoryName])
)
Mengembalikan tabel berikut,
[Adalah Sub Total untuk DateTimeCalendarYear] | [Apakah Sub Total untuk ProductCategoryName] | DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Jumlah Penjualan (USD)] | [Jumlah Diskon (USD)] |
---|---|---|---|---|---|
FALSE |
FALSE |
||||
FALSE |
FALSE |
2008 | Sepeda | 12968255.42 | 36167.6592 |
FALSE |
FALSE |
2005 | Sepeda | 6958251.043 | 4231.1621 |
FALSE |
FALSE |
2006 | Sepeda | 18901351.08 | 178175.8399 |
FALSE |
FALSE |
2007 | Sepeda | 24256817.5 | 276065.992 |
FALSE |
FALSE |
2008 | Komponen | 2008052.706 | 39.9266 |
FALSE |
FALSE |
2005 | Komponen | 574256.9865 | 0 |
FALSE |
FALSE |
2006 | Komponen | 3428213.05 | 948.7674 |
FALSE |
FALSE |
2007 | Komponen | 5195315.216 | 4226.0444 |
FALSE |
FALSE |
2008 | Pakaian | 366507.844 | 4151.1235 |
FALSE |
FALSE |
2005 | Pakaian | 31851.1628 | 90.9593 |
FALSE |
FALSE |
2006 | Pakaian | 455730.9729 | 4233.039 |
FALSE |
FALSE |
2007 | Pakaian | 815853.2868 | 12489.3835 |
FALSE |
FALSE |
2008 | Aksesori | 153299.924 | 865.5945 |
FALSE |
FALSE |
2005 | Aksesori | 18594.4782 | 4.293 |
FALSE |
FALSE |
2006 | Aksesori | 86612.7463 | 1061.4872 |
FALSE |
FALSE |
2007 | Aksesori | 275794.8403 | 4756.6546 |
FALSE |
TRUE |
||||
FALSE |
TRUE |
2008 | 15496115.89 | 41224.3038 | |
FALSE |
TRUE |
2005 | 7582953.67 | 4326.4144 | |
FALSE |
TRUE |
2006 | 22871907.85 | 184419.1335 | |
FALSE |
TRUE |
2007 | 30543780.84 | 297538.0745 | |
TRUE |
TRUE |
76494758.25 | 527507.9262 |