กลับไปหน้า Power BI
ทริคPower BI

Measure กับ Calculated Column

Measure กับ calculated column คำนวณคนละจังหวะและเก็บคนละที่ เลือกใช้ให้ถูกเพื่อไฟล์ไม่อืดและตัวเลขไม่ผิด

เริ่มอ่านตรงนี้ก่อน

อธิบายแบบง่าย

Measure กับ Calculated Column คือเรื่องที่ช่วยให้เราใช้ทำรายงานและ dashboard จากข้อมูลได้ถูกทางขึ้น

ระดับ

เหมาะกับคนที่เริ่มลงมือทำแล้ว

ใช้เมื่อไหร่

คุณต้องตัดสินใจว่าจะวางการคำนวณไว้ที่คอลัมน์หรือ measure

อ่านแล้วทำอะไรต่อ

ใช้ calculated column เก็บยอดต่อบรรทัดเมื่อต้องเอาไปกรองหรือจัดกลุ่ม แต่ใช้ measure เมื่อต้องการยอดรวมที่เปลี่ยนตามมิติที่เลือก

เห็นภาพ: ทริคนี้เป็นยังไง

เลือกผิด: ทำยอดรวมเป็น calculated column เก็บค่าทุกแถว ไฟล์ใหญ่ และไม่เปลี่ยนตามมิติที่กรอง
-- เก็บค่าต่อแถว แล้วยอดรวมไม่ยืดหยุ่น
Revenue Col = Sales[Quantity] * Sales[UnitPrice]
เลือกถูก: ใช้ calculated column เฉพาะตอนต้องกรอง/จัดกลุ่ม ส่วนยอดรวมใช้ measure คำนวณสดตามบริบท
-- คอลัมน์: เมื่อต้องเอาไปกรองหรือจัดกลุ่ม
Line Total = Sales[Quantity] * Sales[UnitPrice]

-- measure: ยอดรวมที่เปลี่ยนตาม slicer
Total Revenue =
SUMX(Sales, Sales[Quantity] * Sales[UnitPrice])
ตัวเลขสรุปที่ต้องเปลี่ยนตาม slicer ควรเป็น measure ไม่ใช่ calculated column — เลือกผิดไฟล์ใหญ่และตัวเลขไม่ขยับ

ใช้ตอนไหน?

  • คุณต้องตัดสินใจว่าจะวางการคำนวณไว้ที่คอลัมน์หรือ measure
  • ไฟล์เริ่มใหญ่ขึ้นและคุณสงสัยว่าคอลัมน์คำนวณกินที่
  • ตัวเลขไม่เปลี่ยนตาม slicer ตามที่คาดไว้

ความหมาย

calculated column (คอลัมน์ที่คำนวณ) คำนวณตอนรีเฟรชและเก็บค่าลงในตารางทุกแถว ใช้พื้นที่ในไฟล์ ส่วน measure (ค่าที่คำนวณตอนดูรายงาน) คำนวณสด ๆ ตามบริบทการกรองในภาพและไม่เก็บค่าไว้ หลักง่าย ๆ คือถ้าต้องใช้จัดกลุ่ม กรอง หรือทำแกนกราฟ ให้ใช้คอลัมน์ ถ้าเป็นตัวเลขสรุปที่ต้องเปลี่ยนตามมุมมอง ให้ใช้ measure

เทียบสองแบบ

Calculated column เขียนต่อแถว ส่วน measure เขียนเป็นการรวมค่าที่เปลี่ยนตามบริบท

-- Calculated column: คำนวณทุกแถว เก็บค่าไว้
Line Total = Sales[Quantity] * Sales[UnitPrice]

-- Measure: คำนวณสดตามตัวกรองในภาพ
Total Revenue = SUMX(Sales, Sales[Quantity] * Sales[UnitPrice])

ตัวอย่างการใช้

ยอดรวมต่อบรรทัดกับยอดรวมทั้งภาพ

ใช้ calculated column เก็บยอดต่อบรรทัดเมื่อต้องเอาไปกรองหรือจัดกลุ่ม แต่ใช้ measure เมื่อต้องการยอดรวมที่เปลี่ยนตามมิติที่เลือก