บทนำ
ดูวิดีโอต่อไปนี้เพื่อเรียนรู้เกี่ยวกับฟังก์ชันตัวทำซ้ำ
Data Analysis Expressions (DAX) รวมกลุ่มของฟังก์ชันที่เรียกว่าฟังก์ชันตัวทําซ้ํา ฟังก์ชันตัวทำซ้ำจะระบุแถวทั้งหมดของตารางที่กำหนดและประเมินนิพจน์ที่ระบุสำหรับแต่ละแถว ซึ่งจะให้ความยืดหยุ่นและการควบคุมว่าการคํานวณแบบจําลองของคุณจะสรุปข้อมูลอย่างไร
ในตอนนี้ คุณคุ้นเคยกับฟังก์ชันการสรุปคอลัมน์เดียว รวมถึง SUM
, COUNT
, MIN
, MAX
, และอื่น ๆ แต่ละฟังก์ชันเหล่านี้มีฟังก์ชันตัวทําซ้ําที่เทียบเท่าที่ระบุโดยส่วนต่อท้าย "X" เช่น SUMX
, COUNTX
, MINX
MAXX
, และอื่น ๆ นอกจากนี้ยังมีฟังก์ชันตัวทำซ้ำพิเศษที่ทำการกรองการจัดอันดับการคำนวณกึ่งบวกเมื่อเวลาผ่านไปและอื่นๆ อีกมากมาย
ลักษณะของฟังก์ชันตัวทำซ้ำทั้งหมดคุณต้องส่งผ่านในตารางและนิพจน์ ตารางสามารถเป็นการอ้างอิงตารางแบบจำลองหรือนิพจน์ที่ส่งกลับวัตถุตารางได้ นิพจน์ต้องประเมินเป็นค่าสเกลาร์
ฟังก์ชันการสรุปแบบคอลัมน์เดียว เช่น SUM
เป็นฟังก์ชันแบบย่อ Microsoft Power BI จะแปลงฟังก์ชันเป็น SUM
SUMX
ภายใน ด้วยเหตุนี้ ข้อกําหนดหน่วยวัดสองรายการต่อไปนี้จะสร้างผลลัพธ์เดียวกันที่มีประสิทธิภาพเหมือนกัน
Revenue = SUM(Sales[Sales Amount])
Revenue =
SUMX(
Sales,
Sales[Sales Amount]
)
เป็นสิ่งสำคัญที่ต้องทำความเข้าใจวิธีการใช้งานบริบทกับฟังก์ชันตัวทำซ้ำ เนื่องจากฟังก์ชันตัวทำซ้ำมีการระบุไว้เหนือแถวตารางนิพจน์จะถูกประเมินสำหรับแต่ละแถวในบริบทแถวซึ่งคล้ายกับสูตรคอลัมน์จากการคำนวณ ตารางได้รับการประเมินในบริบทตัวกรอง ดังนั้นถ้าคุณกําลังใช้ตัวอย่างข้อกําหนดของรายได้ก่อนหน้านี้ ถ้ามีการกรองภาพรายงานตามปีบัญชี FY2020 จากนั้นตารางยอดขายจะประกอบด้วยแถวยอดขายที่สั่งซื้อในปีนั้น บริบทตัวกรองได้รับการอธิบายไว้ในโมดูบริบทตัวกรอง
ข้อสำคัญ
เมื่อคุณกําลังใช้ฟังก์ชันตัวทําซ้ํา ตรวจสอบให้แน่ใจว่าคุณหลีกเลี่ยงการใช้ตารางขนาดใหญ่ (ของแถว) ด้วยนิพจน์ที่ใช้ฟังก์ชัน DAX ที่กว้าง ฟังก์ชันบางอย่าง เช่น SEARCH
ฟังก์ชัน DAX ซึ่งสแกนค่าข้อความที่ค้นหาอักขระหรือข้อความที่ระบุ อาจส่งผลให้ประสิทธิภาพการทํางานช้า นอกจากนี้ LOOKUPVALUE
ฟังก์ชัน DAX อาจส่งผลให้การเรียกข้อมูลค่าเป็นแบบทีละแถวช้า ในกรณีที่สองนี้ ให้ใช้ RELATED
ฟังก์ชัน DAX แทน เมื่อใดก็ตามที่เป็นไปได้