ROLLUPGROUP ระบุชุดคอลัมน์ที่จะถูกพิจารณาเป็น “กลุ่มเดียว” สำหรับการสร้าง subtotal/roll-up ช่วยลด subtotal บางระดับ และมักใช้ร่วมกับ ROLLUP ใน SUMMARIZE
| อาร์กิวเมนต์ | ชนิด | คำอธิบาย |
|---|---|---|
| GroupColumn | column | คอลัมน์ที่ต้องการจัดเป็นกลุ่มเดียวสำหรับ roll-up (ระบุซ้ำได้หลายคอลัมน์) |
ROLLUPGROUP ใช้เพื่อ “จัดกลุ่มคอลัมน์” สำหรับการทำ roll-up/subtotal เพื่อช่วยลดจำนวน subtotal ที่เกิดขึ้น โดยเฉพาะเมื่อคุณทำ roll-up หลายคอลัมน์และไม่ต้องการ subtotal บางระดับ (partial subtotals)
ROLLUPGROUP สามารถใช้แทน ROLLUP ภายใน SUMMARIZE ได้ หรือใช้ซ้อนอยู่ใน ROLLUP เพื่อควบคุมการเกิด subtotal ให้เป็นกลุ่มตามที่ต้องการ
จัดกลุ่มคอลัมน์เพื่อไม่ให้เกิด subtotal แยกย่อยเกินจำเป็น
ใช้ ROLLUP(ROLLUPGROUP(…)) เพื่อกำหนดรูปแบบ subtotal
ROLLUPGROUP ช่วยจัดคอลัมน์เป็นกลุ่มเดียว เพื่อลด subtotal บางระดับที่ไม่ต้องการ
เหมาะเมื่อคุณต้องการ subtotal แบบเป็นกลุ่ม ไม่ได้ต้องการทุกระดับย่อย
เหมาะเมื่อคุณอยากได้ subtotal แบบ “เป็นชุด” มากกว่าการไล่ subtotal ทีละคอลัมน์
ใช้กับ ROLLUP ใน SUMMARIZE และยังพบการใช้งานร่วมกับ ADDMISSINGITEMS ในบางรูปแบบ
โดยแนวคิดคือรวมคอลัมน์หลายตัวให้เป็นกลุ่มเดียวตอนทำ roll-up ทำให้ไม่เกิด subtotal แยกย่อยบางระดับ (partial subtotals) ตามที่คุณจัดกลุ่มไว้
ฟังก์ชันที่ผู้เขียนโยงไว้กับ ROLLUPGROUP จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
ADDMISSINGITEMS เติมสมาชิกที่หายไปในผลลัพธ์สรุปแบบกลุ่ม เพื่อให้แสดงครบทุกสมาชิกของคอลัมน์ที่ระบุ เหมาะกับรายงานที่ต้องการเห็นรายการที่ไม่มีข้อมูลด้วย
ROLLUP บอก SUMMARIZE ให้สร้างแถว subtotal เพิ่มเติมตามคอลัมน์ที่กำหนด ทำให้ได้ทั้งรายละเอียดและรวมย่อยในผลลัพธ์เดียว
ROLLUPADDISSUBTOTAL ใช้ใน SUMMARIZECOLUMNS เพื่อเพิ่มแถว roll-up/subtotal และเพิ่มคอลัมน์ IsSubtotal สำหรับแต่ละระดับที่กำหนด ทำให้แยกแถว subtotal ออกจากรายละเอียดได้ง่าย
ROLLUPISSUBTOTAL ใช้ใน ADDMISSINGITEMS เพื่อจับคู่กลุ่ม roll-up กับคอลัมน์ IsSubtotal ที่สร้างจาก ROLLUPADDISSUBTOTAL ทำให้การเติมรายการที่ขาดหายทำงานได้ถูกต้องเมื่อมี roll-up/subtotal rows
SUMMARIZE สร้างตารางสรุปโดยจัดกลุ่มข้อมูลตามคอลัมน์ที่กำหนด คล้าย GROUP BY ใน SQL หรือ Pivot Table ใน Excel คืนค่าตารางที่มีหนึ่งแถวต่อหนึ่ง unique combination ของคอลัมน์ที่เลือก สามารถอ้างถึงคอลัมน์จาก related table ได้โดยตรงโดยไม่ต้องใช้ RELATED มักใช้สร้าง virtual table ใน measure เพื่อทำ intermediate calculations ก่อนใช้ iterator functions อย่าง SUMX, AVERAGEX คำนวณต่อ ⚠️ Best Practice: ใช้ ADDCOLUMNS ครอบ SUMMARIZE แทนการใส่ extension columns ตรงๆ เพื่อ performance และ filter context control ที่ดีกว่า สำหรับ calculated table แนะนำใช้ SUMMARIZECOLUMNS แทนเนื่องจากมี performance ดีกว่าอย่างมาก
SUMMARIZECOLUMNS เป็นฟังก์ชันหลักสำหรับสร้างตารางสรุปผล โดยจัดกลุ่มตามคอลัมน์ที่กำหนด พร้อมเพิ่มคอลัมน์คำนวณจากเมเชอร์ และสามารถใส่เงื่อนไขกรองได้ทันที
ฟังก์ชันเชิงเครื่องมือสำหรับเลือกจำนวนแถวสูงสุด (Top N) ต่อ ระดับในโครงสร้างลำดับชั้น (hierarchy) ที่มีการขยาย/ยุบโหนด
TREATAS เป็นเสมือนการสร้าง "virtual relationship" โดยไม่ต้องแก้โมเดล ช่วยให้ส่งเงื่อนไขข้ามตารางที่ไม่เชื่อมกัน หรือเมื่อต้องการส่งหลายคีย์พร้อมกัน
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่