อ่านในภาษาอังกฤษ

แชร์ผ่าน


GROUPBY

นําไปใช้กับ: คอลัมน์จากการคํานวณตารางจากการคํานวณMeasureการคํานวณวิชวล

หมายเหตุ

ฟังก์ชันนี้ไม่ได้รับการสนับสนุนสําหรับการใช้งานในการคํานวณวิชวล เนื่องจากอาจแสดงผลลัพธ์ที่ไม่มีความหมาย

ฟังก์ชัน GROUPBY จะคล้ายกับฟังก์ชัน SUMMARIZE อย่างไรก็ตาม GROUPBYnot ทําการ CALCULATE โดยนัยสําหรับคอลัมน์ส่วนขยายใดก็ตามที่เพิ่มเข้าไป GROUPBY อนุญาตให้ใช้ฟังก์ชันใหม่ CURRENTGROUPเพื่อใช้ภายในฟังก์ชันการรวมในคอลัมน์ส่วนขยายที่เพิ่มเข้ามา GROUPBY ถูกใช้เพื่อดําเนินการรวมหลายรายการในการสแกนตารางเดียว

วากยสัมพันธ์

GROUPBY (<table> [, <groupBy_columnName> [, <groupBy_columnName> [, …]]] [, <name>, <expression> [, <name>, <expression> [, …]]])

พารามิเตอร์

เทอม นิยาม
table นิพจน์ DAX ใด ๆ ที่แสดงตารางของข้อมูล
groupBy_columnName ชื่อของคอลัมน์ที่มีอยู่ในตาราง (or ในตาราง related) ซึ่งจะมีการจัดกลุ่มข้อมูล พารามิเตอร์นี้ไม่สามารถเป็นนิพจน์ได้
name ชื่อที่กําหนดให้กับคอลัมน์ใหม่ที่จะถูกเพิ่มลงในรายการของคอลัมน์ GroupBy ล้อมรอบด้วยเครื่องหมายอัญประกาศคู่
expression หนึ่งในฟังก์ชันการรวม X ที่มีอาร์กิวเมนต์ firstCURRENTGROUP() ดูหัวข้อ ด้วย CURRENTGROUP ด้านล่างสําหรับรายการทั้งหมดของฟังก์ชันการรวม X ที่ได้รับการสนับสนุน

value ผลลัพธ์

ตารางที่มีคอลัมน์ที่เลือกสําหรับอาร์กิวเมนต์ groupBy_columnName and คอลัมน์ส่วนขยายที่กําหนดโดยอาร์กิวเมนต์ชื่อ

หมาย เหตุ

  • ฟังก์ชัน GROUPBY ทําดังต่อไปนี้:

    1. เริ่มต้นด้วยตารางที่ระบุ (andallrelated ตารางในทิศทาง "ไปหนึ่ง")

    2. สร้างการจัดกลุ่มโดยใช้ all ของคอลัมน์ GroupBy (ซึ่งจําเป็นต้องมีอยู่ในตารางจากขั้นตอนที่ 1)

    3. แต่ละกลุ่มคือหนึ่งแถวในผลลัพธ์ แต่แสดงถึงชุดของแถวในตารางต้นฉบับ

    4. สําหรับแต่ละกลุ่ม evaluate เพิ่มคอลัมน์ส่วนขยาย and ไม่ได้วาง CALCULATEnot โดยนัยลงในบริบท filter ซึ่งแตกต่างจากฟังก์ชัน SUMMARIZE

  • แต่ละคอลัมน์ที่คุณ define ชื่อต้องมีนิพจน์ที่สอดคล้องกัน มิฉะนั้น ระบบจะส่งกลับ error อาร์กิวเมนต์ first ชื่อ จะกําหนดชื่อของคอลัมน์ในผลลัพธ์ อาร์กิวเมนต์ second นิพจน์ จะกําหนดการคํานวณที่ดําเนินการเพื่อรับ value สําหรับแต่ละแถวในคอลัมน์นั้น

  • groupBy_columnName ต้องอยู่ในตาราง or ในตาราง related

  • แต่ละชื่อต้องอยู่ในเครื่องหมายอัญประกาศคู่

  • ฟังก์ชันจะจัดกลุ่มชุดของแถวที่เลือกเป็นชุดของแถวสรุปโดย values ของ or คอลัมน์ groupBy_columnName มากกว่า หนึ่งแถวจะถูกส่งกลับสําหรับแต่ละกลุ่ม

  • GROUPBY จะใช้เพื่อดําเนินการรวมผลลัพธ์ระดับกลางจากนิพจน์ตาราง DAX เป็นหลัก สําหรับการรวมที่มีประสิทธิภาพในตารางทางกายภาพในแบบจําลอง ให้พิจารณาการใช้ฟังก์ชัน SUMMARIZECOLUMNSorSUMMARIZE

  • ฟังก์ชันนี้ not ได้รับการสนับสนุนสําหรับการใช้งานในโหมด DirectQuery เมื่อใช้ในคอลัมน์จากการคํานวณ or กฎการรักษาความปลอดภัยระดับแถว (RLS)

ด้วย CURRENTGROUP

CURRENTGROUP สามารถใช้ได้เฉพาะในนิพจน์ที่กําหนดคอลัมน์ส่วนขยายภายในฟังก์ชัน GROUPBY เท่านั้น in-effectCURRENTGROUP จะแสดงชุดของแถวจากอาร์กิวเมนต์ตารางของ GROUPBY ที่เป็นของแถวปัจจุบันของผลลัพธ์ GROUPBY ฟังก์ชัน CURRENTGROUP จะไม่มีอาร์กิวเมนต์ and ได้รับการสนับสนุนเป็นอาร์กิวเมนต์ first ของฟังก์ชันการรวมต่อไปนี้: AVERAGEX, COUNTAX, COUNTX, GEOMEANX, MAXX, MINX, PRODUCTX, STDEVX.S, STDEVX.P, SUMX, VARX.S, VARX.P

ตัวอย่าง

ตัวอย่างต่อไปนี้ first คํานวณยอดขายทั้งหมดที่จัดกลุ่มตามประเทศ andproduct หมวดหมู่ในตารางทางกายภาพโดยใช้ฟังก์ชัน SUMMARIZECOLUMNS จากนั้นใช้ฟังก์ชัน GROUPBY เพื่อสแกนผลลัพธ์ระดับกลางจากขั้นตอน first เพื่อ find ยอดขายสูงสุดในแต่ละประเทศในหมวดหมู่ product

DEFINE  
VAR SalesByCountryAndCategory =  
SUMMARIZECOLUMNS(  
Geography[Country],
Product[Category],
"Total Sales", SUMX(Sales, Sales[Price] * Sales[Qty])  
)  
  
EVALUATE
GROUPBY(  
SalesByCountryAndCategory,
Geography[Country],
"Max Sales", MAXX(CURRENTGROUP(), [Total Sales])  
)  

ฟังก์ชัน
ฟังก์ชัน