เรียนรู้เกี่ยวกับบริบทแถว
เมื่อคุณได้สร้างคอลัมน์จากการคำนวณแล้ว คุณสามารถเรียนรู้วิธีการประเมินสูตรของคอลัมน์ได้
สูตรสำหรับคอลัมน์จากการคำนวณจะได้รับการประเมินสำหรับแต่ละแถวของตาราง นอกจากนี้ยังประเมินภายในบริบทแถว ซึ่งหมายถึงแถวปัจจุบัน พิจารณาข้อกำหนดคอลัมน์จากการคำนวณ ปีบัญชีครบกำหนด:
Due Fiscal Year =
"FY"
& YEAR('Due Date'[Due Date])
+ IF(
MONTH('Due Date'[Due Date]) <= 6,
1
)
เมื่อสูตรได้รับการประเมินสำหรับแต่ละแถว'Due Date'[Due Date]
การอ้างอิงคอลัมน์จะส่งกลับค่าคอลัมน์สำหรับแถวนั้นๆ คุณจะพบว่า Microsoft Excel มีแนวคิดเดียวกันในการทำงานกับสูตรในตาราง Excel
อย่างไรก็ตาม บริบทแถวจะไม่ขยายเกินตาราง หากสูตรของคุณต้องการอ้างอิงคอลัมน์ในตารางอื่น คุณมีสองตัวเลือกดังนี้:
- ถ้าตารางเกี่ยวข้องกันโดยตรงหรือโดยอ้อม คุณสามารถใช้
RELATED
ฟังก์ชันหรือRELATEDTABLE
DAX ได้ ฟังก์ชันRELATED
จะดึงค่าที่ด้านเดียวของความสัมพันธ์ ในขณะที่RELATEDTABLE
รับค่าจากหลายด้าน ฟังก์ชันRELATEDTABLE
จะส่งกลับวัตถุตาราง - เมื่อตารางไม่เกี่ยวข้องกัน คุณสามารถใช้
LOOKUPVALUE
ฟังก์ชัน DAX ได้
โดยทั่วไปแล้ว ให้พยายามใช้ RELATED
ฟังก์ชัน เมื่อใดก็ตามที่เป็นไปได้ โดยปกติแล้วจะทํางานได้ LOOKUPVALUE
ดีกว่าฟังก์ชันเนื่องจากวิธีการจัดเก็บและจัดทําดัชนีข้อมูลความสัมพันธ์และคอลัมน์
ในตอนนี้ ให้เพิ่มข้อกําหนดคอลัมน์จากการคํานวณต่อไปนี้ลงในตาราง ยอดขาย :
Discount Amount =
(
Sales[Order Quantity]
* RELATED('Product'[List Price])
) - Sales[Sales Amount]
ข้อกําหนดของคอลัมน์จากการคํานวณจะเพิ่มคอลัมน์จํานวนส่วนลดลงในตารางยอดขาย Power BI ประเมินสูตรคอลัมน์จากการคํานวณสําหรับแต่ละแถวของตารางยอดขาย ค่าสำหรับคอลัมน์ ปริมาณคำสั่งซื้อและจำนวนยอดขายจะถูกดึงมาภายในบริบทแถว อย่างไรก็ตาม เนื่องจากคอลัมน์ราคาของรายการเป็นของตารางRELATED
ผลิตภัณฑ์ จึงจําเป็นต้องใช้ฟังก์ชันเพื่อดึงข้อมูลราคาของรายการสําหรับผลิตภัณฑ์ลดราคา
บริบทแถวถูกใช้เมื่อมีการประเมินสูตรคอลัมน์จากการคำนวณ นอกจากนี้ ยังใช้เมื่อมีการใช้คลาสของฟังก์ชันที่เรียกว่าฟังก์ชันตัวทำซ้ำ ฟังก์ชันตัวทำซ้ำช่วยให้คุณมีความยืดหยุ่นในการสร้างการสรุปที่ซับซ้อน ฟังก์ชันตัวทําซ้ําได้อธิบายไว้ในโมดูลที่ถัดไป