หนึ่งในฟีเจอร์ที่ทรงพลังที่สุดใน Power Pivot คือความสามารถในการสร้างความสัมพันธ์ระหว่างตาราง แล้วใช้ตารางที่เกี่ยวข้องในการค้นหาหรือกรองข้อมูลที่เกี่ยวข้อง คุณเรียกใช้ค่าที่เกี่ยวข้องจากตารางโดยใช้ภาษาสูตรที่ให้Power Pivot, Data Analysis Expressions (DAX) DAX ใช้รูปแบบเชิงสัมพันธ์ จึงสามารถเรียกใช้ค่าที่เกี่ยวข้องหรือค่าที่สอดคล้องกันในตารางหรือคอลัมน์อื่นได้อย่างง่ายดายและถูกต้อง ถ้าคุณคุ้นเคยกับ VLOOKUP ใน Excel ฟังก์ชันการ Power Pivot จะคล้ายกัน แต่ใช้งานได้ง่ายขึ้นมาก
คุณสามารถสร้างสูตรที่ค้นหาเป็นส่วนหนึ่งของคอลัมน์ที่คํานวณ หรือเป็นส่วนหนึ่งของการวัดเพื่อใช้ใน PivotTable หรือค่าPivotChart สำหรับข้อมูลเพิ่มเติม ให้ดูที่หัวข้อต่อไปนี้
เขตข้อมูลจากการคำนวณใน Power Pivot
คอลัมน์จากการคำนวณใน Power Pivot
ส่วนนี้อธิบายเกี่ยวกับฟังก์ชัน DAX ที่มีให้ในการค้นหา พร้อมกับตัวอย่างบางส่วนของวิธีการใช้ฟังก์ชัน
หมายเหตุ: คุณอาจต้องสร้างความสัมพันธ์ระหว่างตารางก่อน โดยขึ้นอยู่กับชนิดของการดําเนินการค้นหาหรือสูตรการค้นหาที่คุณต้องการใช้
การเข้าใจฟังก์ชันการค้นหา
ความสามารถในการค้นหาข้อมูลที่ตรงกันหรือข้อมูลที่เกี่ยวข้องจากตารางอื่นจะมีประโยชน์เป็นพิเศษในกรณีที่ตารางปัจจุบันมีเฉพาะตัวระบุบางชนิดเท่านั้น แต่ข้อมูลที่คุณต้องการ (เช่น ราคาผลิตภัณฑ์ ชื่อ หรือค่าโดยละเอียดอื่นๆ) จะถูกจัดเก็บไว้ในตารางที่เกี่ยวข้อง ซึ่งยังมีประโยชน์เมื่อมีแถวหลายแถวในตารางอื่นที่เกี่ยวข้องกับแถวหรือค่าปัจจุบันปัจจุบัน ตัวอย่างเช่น คุณสามารถเรียกยอดขายทั้งหมดที่ผูกกับภูมิภาค ร้านค้า หรือพนักงานขายแต่ละภูมิภาคได้อย่างง่ายดาย
ในทางตรงข้ามกับExcelการค้นหาของ Excel เช่น VLOOKUP ซึ่งยึดตามอาร์เรย์ หรือ LOOKUP ซึ่งได้รับค่าที่ตรงกันหลายค่า DAX จะตามความสัมพันธ์ที่มีอยู่ระหว่างตารางที่รวมเข้ากับคีย์ เพื่อรับค่าที่เกี่ยวข้องกันค่าเดียวที่ตรงกับทุกประการ DAX ยังสามารถรับตารางของระเบียนที่เกี่ยวข้องกับระเบียนปัจจุบันได้
หมายเหตุ: ถ้าคุณคุ้นเคยกับฐานข้อมูลเชิงสัมพันธ์ คุณสามารถลองนึกถึงการค้นหาใน Power Pivot ที่คล้ายกับเลือกย่อยที่ซ้อนกันใน transact-SQL
การเรียกค่าที่เกี่ยวข้องกันค่าเดียว
ฟังก์ชัน RELATED จะส่งกลับค่าเดี่ยวจากตารางอื่นที่เกี่ยวข้องกับค่าปัจจุบันในตารางปัจจุบัน คุณระบุคอลัมน์ที่มีข้อมูลที่คุณต้องการ และฟังก์ชันจะตามความสัมพันธ์ที่มีอยู่ระหว่างตารางเพื่อดึงข้อมูลค่าจากคอลัมน์ที่ระบุในตารางที่เกี่ยวข้อง ในบางกรณี ฟังก์ชันจะต้องเป็นไปตามสายความสัมพันธ์เพื่อรับข้อมูล
ตัวอย่างเช่น สมมติว่าคุณมีรายการของการจัดส่งวันนี้ในExcel อย่างไรก็ตาม รายการจะมีเฉพาะหมายเลข ID พนักงาน หมายเลข ID ใบสั่งซื้อ และหมายเลขรหัสผู้จัดส่ง ซึ่งรายงานอ่านได้ยาก เมื่อต้องการรับข้อมูลเพิ่มเติมที่คุณต้องการ คุณสามารถแปลงรายการดังกล่าวเป็นตารางที่ลิงก์ Power Pivot แล้วสร้างความสัมพันธ์กับตารางพนักงานและผู้ค้าปลีก จับคู่รหัสพนักงานกับเขตข้อมูล EmployeeKey และ ResellerID กับเขตข้อมูล ResellerKey
เมื่อต้องการแสดงข้อมูลการค้นหาในตารางที่ลิงก์ของคุณ ให้คุณเพิ่มคอลัมน์คํานวณใหม่สองคอลัมน์ ด้วยสูตรต่อไปนี้:
= RELATED('Employees'[EmployeeName])
= RELATED('Resellers'[CompanyName])
การจัดส่งของวันนี้ก่อนการค้นหา
รหัสใบสั่งซื้อ |
EmployeeID |
ResellerID |
---|---|---|
100314 |
230 |
445 |
100315 |
15 |
445 |
100316 |
76 |
108 |
ตารางพนักงาน
EmployeeID |
พนักงาน |
ตัวแทนขาย |
---|---|---|
230 |
Kuppa Vamsi |
ระบบแบบแยกส่วน (Modular Cycle Systems) |
15 |
Pilar Ackeman |
ระบบแบบแยกส่วน (Modular Cycle Systems) |
76 |
Kim Ralls |
Associated Bikes |
การจัดส่งของวันนี้กับการค้นหา
รหัสใบสั่งซื้อ |
EmployeeID |
ResellerID |
พนักงาน |
ตัวแทนขาย |
---|---|---|---|---|
100314 |
230 |
445 |
Kuppa Vamsi |
ระบบแบบแยกส่วน (Modular Cycle Systems) |
100315 |
15 |
445 |
Pilar Ackeman |
ระบบแบบแยกส่วน (Modular Cycle Systems) |
100316 |
76 |
108 |
Kim Ralls |
Associated Bikes |
ฟังก์ชันนี้จะใช้ความสัมพันธ์ระหว่างตารางที่ลิงก์กับตาราง พนักงาน และ ผู้ค้าปลีก เพื่อรับชื่อที่ถูกต้องของแต่ละแถวในรายงาน คุณยังสามารถใช้ค่าที่เกี่ยวข้องในการคํานวณได้ ดูข้อมูลและตัวอย่างเพิ่มเติมที่ ฟังก์ชันRELATED
การเรียกรายการค่าที่เกี่ยวข้อง
ฟังก์ชัน RELATEDTABLE ตามความสัมพันธ์ที่มีอยู่ และส่งกลับตารางที่มีแถวที่ตรงกันทั้งหมดจากตารางที่ระบุ For example, assume you want to find out how many orders each reseller has placed this year. คุณสามารถสร้างคอลัมน์การคํานวณใหม่ในตาราง ผู้จัดซื้อ ที่มีสูตรต่อไปนี้ ซึ่งจะค้นหาระเบียนของแต่ละผู้จัดResellerSales_USD ในตาราง ResellerSales_USD และนับจํานวนการสั่งซื้อแต่ละรายการที่ผู้จัดซื้อแต่ละรายมี
=COUNTROWS(RELATEDTABLE(ResellerSales_USD))
ในสูตรนี้ ฟังก์ชัน RELATEDTABLE จะได้รับค่าของ ResellerKey เป็นครั้งแรกในแต่ละผู้ค้าปลีกในตารางปัจจุบัน (คุณไม่าเป็นต้องระบุคอลัมน์ ID ที่ใดก็ได้ในสูตร Power Pivot ใช้ความสัมพันธ์ที่มีอยู่ระหว่างตาราง) จากนั้น ฟังก์ชัน RELATEDTABLE จะรับแถวทั้งหมดจากResellerSales_USDตารางที่เกี่ยวข้องกับผู้ค้าปลีกแต่ละคน และนับแถว ถ้าไม่มีความสัมพันธ์ (โดยตรงหรือโดยอ้อม) ระหว่างสองตาราง คุณจะได้รับแถวทั้งหมดจากResellerSales_USDตารางนั้น
For the reseller Modular Cycle Systems in our sample database, there are four orders in the sales table, so the function returns 4. For Associated Bikes, the reseller has no sales, so the function returns a blank.
ตัวแทนขาย |
ระเบียนในตารางยอดขายของผู้ค้าปลีกนี้ |
|
---|---|---|
ระบบแบบแยกส่วน (Modular Cycle Systems) |
ID ตัวแทนขาย |
SalesOrderNumber |
445 |
SO53494 |
|
445 |
SO71872 |
|
445 |
SO65233 |
|
445 |
SO59000 |
|
ID ตัวแทนขาย |
SalesOrderNumber |
|
Associated Bikes |
หมายเหตุ: เนื่องจากฟังก์ชัน RELATEDTABLE ส่งกลับตาราง ไม่ใช่ค่าเดียว จึงต้องใช้เป็นอาร์กิวเมนต์กับฟังก์ชันที่ดําเนินการบนตาราง หากต้องการข้อมูลเพิ่มเติม โปรดดูฟังก์ชัน RELATEDTABLE