SUMMARIZE
นําไปใช้กับ: คอลัมน์จากการคํานวณตารางจากการคํานวณMeasureการคํานวณวิชวล
แสดงตารางสรุปสําหรับผลรวมที่ร้องขอในชุดกลุ่ม
ไวยากรณ์
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
พารามิเตอร์
เงื่อนไข | คำนิยาม |
---|---|
table |
นิพจน์ DAX ใด ๆ ที่แสดงตารางของข้อมูล |
groupBy_ColumnName |
(ไม่บังคับ) ชื่อที่ตรงตามหลักเกณฑ์ของคอลัมน์ที่มีอยู่ที่ใช้ในการสร้างกลุ่มข้อมูลสรุปโดยยึดตาม values ที่พบในนั้น พารามิเตอร์นี้ไม่สามารถเป็นนิพจน์ได้ |
name |
ชื่อที่กําหนดให้กับคอลัมน์ orsummarize ทั้งหมด ซึ่งอยู่ในอัญประกาศคู่ |
expression |
นิพจน์ DAX ใด ๆ ที่แสดงสเกลาเดียว valueซึ่งจะมีการประเมินนิพจน์หลายครั้ง (สําหรับแต่ละแถว/บริบท) |
value ผลลัพธ์
ตารางที่มีคอลัมน์ที่เลือกสําหรับอาร์กิวเมนต์ groupBy_columnName
and คอลัมน์สรุปที่ออกแบบโดยอาร์กิวเมนต์ชื่อ
หมายเหตุ
แต่ละคอลัมน์ที่คุณ define ชื่อต้องมีนิพจน์ที่สอดคล้องกัน มิฉะนั้น ระบบจะส่งกลับ error อาร์กิวเมนต์ first ชื่อ จะกําหนดชื่อของคอลัมน์ในผลลัพธ์ อาร์กิวเมนต์ second นิพจน์ จะกําหนดการคํานวณที่ดําเนินการเพื่อรับ value สําหรับแต่ละแถวในคอลัมน์นั้น
groupBy_columnName ต้องอยู่ใน
table
or ในตาราง related เพื่อtable
แต่ละชื่อต้องอยู่ในเครื่องหมายอัญประกาศคู่
ฟังก์ชันจะจัดกลุ่มชุดของแถวที่เลือกเป็นชุดของแถวสรุปโดย values ของ or คอลัมน์ groupBy_columnName มากกว่า หนึ่งแถวจะถูกส่งกลับสําหรับแต่ละกลุ่ม
ฟังก์ชันนี้ not ได้รับการสนับสนุนสําหรับการใช้งานในโหมด DirectQuery เมื่อใช้ในคอลัมน์จากการคํานวณ or กฎการรักษาความปลอดภัยระดับแถว (RLS)
ตัวอย่าง
ตัวอย่างต่อไปนี้จะให้ผลลัพธ์เป็นข้อมูลสรุปของยอดขายของผู้ค้าปลีกที่จัดกลุ่มตาม calendaryearand ชื่อหมวดหมู่ product ตารางผลลัพธ์นี้ช่วยให้คุณสามารถวิเคราะห์ยอดขายของผู้ค้าปลีกตามประเภท yearandproduct
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
ตารางต่อไปนี้แสดงตัวอย่างของข้อมูลซึ่งจะ received โดยฟังก์ชันใด ๆ ที่คาดว่าจะได้รับตาราง:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | จักรยาน | 12968255.42 | 36167.6592 |
2005 | จักรยาน | 6958251.043 | 4231.1621 |
2006 | จักรยาน | 18901351.08 | 178175.8399 |
2007 | จักรยาน | 24256817.5 | 276065.992 |
2008 | คอมโพเนนต์ | 2008052.706 | 39.9266 |
2005 | คอมโพเนนต์ | 574256.9865 | 0 |
2006 | คอมโพเนนต์ | 3428213.05 | 948.7674 |
2007 | คอมโพเนนต์ | 5195315.216 | 4226.0444 |
2008 | เสื้อผ้า | 366507.844 | 4151.1235 |
2005 | เสื้อผ้า | 31851.1628 | 90.9593 |
2006 | เสื้อผ้า | 455730.9729 | 4233.039 |
2007 | เสื้อผ้า | 815853.2868 | 12489.3835 |
2008 | อุปกรณ์ | 153299.924 | 865.5945 |
2005 | อุปกรณ์ | 18594.4782 | 4.293 |
2006 | อุปกรณ์ | 86612.7463 | 1061.4872 |
2007 | อุปกรณ์ | 275794.8403 | 4756.6546 |
ด้วย ROLLUP
การเพิ่มไวยากรณ์ ROLLUP จะปรับเปลี่ยนลักษณะการทํางานของฟังก์ชัน SUMMARIZE โดยการเพิ่มแถว rollup ไปยังผลลัพธ์บนคอลัมน์ groupBy_columnName สามารถใช้ ROLLUP ภายในนิพจน์ SUMMARIZE เท่านั้น
ตัวอย่าง
ตัวอย่างต่อไปนี้เพิ่มแถว rollup ไปยังคอลัมน์ Group-By ของการเรียกใช้ฟังก์ชัน SUMMARIZE:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
แสดงตารางต่อไปนี้
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | จักรยาน | 12968255.42 | 36167.6592 |
2005 | จักรยาน | 6958251.043 | 4231.1621 |
2006 | จักรยาน | 18901351.08 | 178175.8399 |
2007 | จักรยาน | 24256817.5 | 276065.992 |
2008 | คอมโพเนนต์ | 2008052.706 | 39.9266 |
2005 | คอมโพเนนต์ | 574256.9865 | 0 |
2006 | คอมโพเนนต์ | 3428213.05 | 948.7674 |
2007 | คอมโพเนนต์ | 5195315.216 | 4226.0444 |
2008 | เสื้อผ้า | 366507.844 | 4151.1235 |
2005 | เสื้อผ้า | 31851.1628 | 90.9593 |
2006 | เสื้อผ้า | 455730.9729 | 4233.039 |
2007 | เสื้อผ้า | 815853.2868 | 12489.3835 |
2008 | อุปกรณ์ | 153299.924 | 865.5945 |
2005 | อุปกรณ์ | 18594.4782 | 4.293 |
2006 | อุปกรณ์ | 86612.7463 | 1061.4872 |
2007 | อุปกรณ์ | 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 |
ด้วย ROLLUPGROUP
การเพิ่ม ROLLUPGROUP ภายในไวยากรณ์ ROLLUP สามารถใช้เพื่อป้องกันผลรวมย่อยบางส่วนในแถว rollup สามารถใช้ ROLLUPGROUP ภายในนิพจน์ ROLLUP, ROLLUPADDISSUBTOTAL, orROLLUPISSUBTOTAL เท่านั้น
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงเฉพาะผลรวมทั้งหมดของประเภท and ปี all โดยไม่มีผลรวมย่อยของแต่ละ year ที่มีหมวดหมู่ all:
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
แสดงตารางต่อไปนี้
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | จักรยาน | 12968255.42 | 36167.6592 |
2005 | จักรยาน | 6958251.043 | 4231.1621 |
2006 | จักรยาน | 18901351.08 | 178175.8399 |
2007 | จักรยาน | 24256817.5 | 276065.992 |
2008 | คอมโพเนนต์ | 2008052.706 | 39.9266 |
2005 | คอมโพเนนต์ | 574256.9865 | 0 |
2006 | คอมโพเนนต์ | 3428213.05 | 948.7674 |
2007 | คอมโพเนนต์ | 5195315.216 | 4226.0444 |
2008 | เสื้อผ้า | 366507.844 | 4151.1235 |
2005 | เสื้อผ้า | 31851.1628 | 90.9593 |
2006 | เสื้อผ้า | 455730.9729 | 4233.039 |
2007 | เสื้อผ้า | 815853.2868 | 12489.3835 |
2008 | อุปกรณ์ | 153299.924 | 865.5945 |
2005 | อุปกรณ์ | 18594.4782 | 4.293 |
2006 | อุปกรณ์ | 86612.7463 | 1061.4872 |
2007 | อุปกรณ์ | 275794.8403 | 4756.6546 |
76494758.25 | 527507.9262 |
ด้วย ISSUBTOTAL
ด้วย ISSUBTOTALคุณสามารถสร้างคอลัมน์อื่นในนิพจน์ SUMMARIZE ที่ส่งกลับ Trueif แถว contains ผลรวมย่อย values สําหรับคอลัมน์ที่ระบุเป็นอาร์กิวเมนต์ไปยัง ISSUBTOTALมิฉะนั้นจะส่งกลับ False สามารถใช้ ISSUBTOTAL ภายในนิพจน์ SUMMARIZE เท่านั้น
ตัวอย่าง
sample ต่อไปนี้จะสร้างคอลัมน์ ISSUBTOTAL สําหรับแต่ละคอลัมน์ ROLLUP ในการเรียกใช้ฟังก์ชัน SUMMARIZE ที่ระบุ:
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])
)
แสดงตารางต่อไปนี้
[Is Sub Total for DateTimeCalendarYear] | [Is Sub Total for ProductCategoryName] | DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|---|---|
FALSE |
FALSE |
||||
FALSE |
FALSE |
2008 | จักรยาน | 12968255.42 | 36167.6592 |
FALSE |
FALSE |
2005 | จักรยาน | 6958251.043 | 4231.1621 |
FALSE |
FALSE |
2006 | จักรยาน | 18901351.08 | 178175.8399 |
FALSE |
FALSE |
2007 | จักรยาน | 24256817.5 | 276065.992 |
FALSE |
FALSE |
2008 | คอมโพเนนต์ | 2008052.706 | 39.9266 |
FALSE |
FALSE |
2005 | คอมโพเนนต์ | 574256.9865 | 0 |
FALSE |
FALSE |
2006 | คอมโพเนนต์ | 3428213.05 | 948.7674 |
FALSE |
FALSE |
2007 | คอมโพเนนต์ | 5195315.216 | 4226.0444 |
FALSE |
FALSE |
2008 | เสื้อผ้า | 366507.844 | 4151.1235 |
FALSE |
FALSE |
2005 | เสื้อผ้า | 31851.1628 | 90.9593 |
FALSE |
FALSE |
2006 | เสื้อผ้า | 455730.9729 | 4233.039 |
FALSE |
FALSE |
2007 | เสื้อผ้า | 815853.2868 | 12489.3835 |
FALSE |
FALSE |
2008 | อุปกรณ์ | 153299.924 | 865.5945 |
FALSE |
FALSE |
2005 | อุปกรณ์ | 18594.4782 | 4.293 |
FALSE |
FALSE |
2006 | อุปกรณ์ | 86612.7463 | 1061.4872 |
FALSE |
FALSE |
2007 | อุปกรณ์ | 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 |