หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
หมายเหตุ
ก่อนอ่านบทความนี้ โปรดอ่าน ภาพรวมของการประเมินคิวรีและการพับคิวรีใน Power Query เพื่อทําความเข้าใจวิธีการทํางานของการพับใน Power Query ได้ดียิ่งขึ้น
ตัวบ่งชี้การพับคิวรีช่วยให้คุณเข้าใจว่าขั้นตอนใดพับและขั้นตอนใดไม่พับ ขั้นตอนจะพับเมื่อ Power Query แปลการแปลงเป็นคิวรีแหล่งข้อมูลและเรียกใช้ที่แหล่งข้อมูล
เมื่อคุณใช้ตัวบ่งชี้การพับคิวรี จะชัดเจนเมื่อคุณทําการเปลี่ยนแปลงที่ทําลายการพับ คุณลักษณะนี้ช่วยให้คุณแก้ไขปัญหา หลีกเลี่ยงปัญหาด้านประสิทธิภาพและรับข้อมูลเชิงลึกที่ดีขึ้นลงในคิวรีของคุณ ในกรณีส่วนใหญ่ ขั้นบันไดจะพับหรือไม่พับ แต่มีหลายกรณีที่ผลลัพธ์ไม่ชัดเจน ส่วน ตัวบ่งชี้การวินิจฉัยขั้นตอน ครอบคลุมกรณีเหล่านี้ (อาจพับทึบและไม่รู้จัก)
หมายเหตุ
คุณลักษณะตัวบ่งชี้การพับคิวรีจะพร้อมใช้งานสําหรับ Power Query Online เท่านั้น
ตีความการวินิจฉัยการพับคิวรี
ใน Power Query Online ตัวบ่งชี้ Query Folding ถัดจากขั้นตอนแสดงให้เห็นว่าคิวรีทั้งหมดขึ้นอยู่กับจุดนั้นพับหรือไม่ สถานะการวินิจฉัยไม่ได้เรียงตามลําดับ ถ้าตัวบ่งชี้แสดงว่าคิวรีไม่ได้พับตามด้วยตัวบ่งชี้ที่แสดงการพับคิวรีจนถึงจุดนั้นจะพับ
การตีความนี้ทํางานกับคิวรีอย่างง่ายกับแหล่งข้อมูล SQL ตัวอย่างเช่น เชื่อมต่อกับตาราง Production.Product ใน ฐานข้อมูลตัวอย่าง AdventureWorks แล้วโหลดข้อมูล การโหลดตัวอย่างนี้ผ่านตัวนําทาง Power Query มีคิวรีดังต่อไปนี้:
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data]
in
Navigation
ถ้าคุณตรวจสอบว่ารหัสนี้แสดงอย่างไรในตัวบ่งชี้การพับคิวรี คุณทราบว่าขั้นตอนแรกไม่รวม แต่ขั้นตอนที่สองทําการพับซึ่งหมายความว่าคิวรีสูงถึงจุดนั้นจะพับ
ในตัวอย่างนี้ขั้นตอนเริ่มต้นไม่สามารถยืนยันได้ว่าพับ (ไม่รวมกัน) แต่ขั้นตอนสุดท้ายที่สร้างขึ้นเมื่อคุณโหลดข้อมูลในตอนแรกจะพับ วิธีการจัดการขั้นตอนแรก (แหล่งข้อมูล และบางครั้งขั้นตอน การนําทาง อื่นๆ) จะขึ้นอยู่กับตัวเชื่อมต่อ ตัวอย่างเช่น ด้วย SQL ขั้นตอนจะถูกจัดการเป็นค่าตารางแค็ตตาล็อกซึ่งไม่ได้พับขึ้น อย่างไรก็ตาม ทันทีที่คุณเลือกข้อมูลสําหรับตัวเชื่อมต่อนั้น ตัวเชื่อมต่อจะพับ
ในทางกลับกัน ตัวบ่งชี้นี้อาจหมายถึงการพับคิวรีของคุณขึ้นจนถึงจุดแล้วหยุดพับได้ ตัวบ่งชี้ที่ไม่พับไม่ได้หมายความว่าไม่มีอะไรพับ แต่หมายความว่าไม่ใช่ทุกอย่างที่พับ โดยทั่วไปทุกอย่างขึ้นอยู่กับพับตัวบ่งชี้พับครั้งล่าสุดโดยมีการดําเนินงานมากขึ้นหลังจาก
การปรับเปลี่ยนตัวอย่างก่อนหน้านี้ คุณสามารถแปลงที่ไม่เคยพับ — ทําให้แต่ละคําเป็นตัวพิมพ์ใหญ่ได้
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data],
#"Capitalized each word" = Table.TransformColumns(Navigation, {{"Name", each Text.Proper(_), type text}})
in
#"Capitalized each word"
ในตัวบ่งชี้การพับคิวรี คุณมีตัวบ่งชี้เดียวกันกับก่อนหน้านี้ ยกเว้นขั้นตอนสุดท้ายไม่ได้พับ ทุกอย่างขึ้นอยู่กับขั้นตอนนี้จะดําเนินการในแหล่งข้อมูล ในขณะที่ขั้นตอนสุดท้ายจะดําเนินการภายในเครื่อง
ตัวบ่งชี้การวินิจฉัยขั้นตอน
ตัวบ่งชี้การพับคิวรีใช้แผนคิวรีต้นแบบ และต้องการให้รายงานข้อมูลเกี่ยวกับคิวรี ในปัจจุบัน แผนคิวรีสนับสนุนเฉพาะตาราง ดังนั้นบางกรณี (รายการ ระเบียน ดั้งเดิม) จะไม่รายงานเป็นการพับหรือไม่ ในทํานองเดียวกัน ตารางคงที่จะรายงานแบบทึบแสง
| ไฟเลี้ยว | ไอคอน | คำอธิบาย |
|---|---|---|
| พับ |
|
ตัวบ่งชี้การพับบอกคุณว่าแหล่งข้อมูลจะประเมินคิวรีจนถึงขั้นตอนนี้ |
| ไม่มีการพับ |
|
ตัวบ่งชี้การพับไม่ได้บอกคุณว่าส่วนหนึ่งของคิวรีขึ้นอยู่กับขั้นตอนนี้ได้รับการประเมินภายนอกแหล่งข้อมูล คุณสามารถเปรียบเทียบกับตัวบ่งชี้การพับล่าสุด ถ้ามีตัวบ่งชี้หนึ่ง เพื่อดูว่าคุณสามารถจัดเรียงคิวรีของคุณใหม่เพื่อให้มีประสิทธิภาพมากขึ้นหรือไม่ |
| อาจพับ |
|
ตัวบ่งชี้แบบพับอาจเป็นเรื่องผิดปกติ ซึ่งหมายถึงคิวรีที่ "อาจ" พับ ซึ่งระบุว่ามีการพับหรือไม่พับในขณะทํางาน เมื่อดึงผลลัพธ์จากคิวรี และแผนคิวรีเป็นแบบไดนามิก ตัวบ่งชี้เหล่านี้อาจปรากฏเฉพาะกับการเชื่อมต่อ ODBC หรือ OData เท่านั้น |
| ทึบแสง |
|
ตัวบ่งชี้แบบทึบแสงบอกให้คุณทราบว่าแผนคิวรีที่เป็นผลลัพธ์นั้นไม่ครอบคลุมด้วยเหตุผลบางประการ ซึ่งโดยทั่วไปแสดงให้เห็นว่ามีตาราง "ค่าคงที่" จริง หรือตัวบ่งชี้และเครื่องมือแผนคิวรีไม่สนับสนุนการแปลงหรือตัวเชื่อมต่อนั้น |
| ไม่คุ้นเคย |
|
ตัวบ่งชี้ที่ไม่รู้จักแสดงถึงการขาดหายไปของแผนคิวรี เนื่องจากข้อผิดพลาดหรือพยายามเรียกใช้การประเมินแผนคิวรีในสิ่งอื่นนอกเหนือจากตาราง (เช่น เรกคอร์ด รายการ หรือค่าดั้งเดิม) |
วิเคราะห์ตัวบ่งชี้การพับคิวรี
หากต้องการวิเคราะห์ตัวบ่งชี้การพับคิวรี ให้เชื่อมต่อกับตาราง Production.Product ใน AdventureWorks (SQL) การโหลดเริ่มต้นแสดงขั้นตอน แหล่งที่มา เป็นแบบไม่รวมและขั้นตอน การนําทาง ดังที่แสดงในรูปต่อไปนี้
เมื่อคุณเพิ่มขั้นตอนที่พับ คุณจะขยายเส้นสีเขียวทางด้านขวา ส่วนขยายนี้เกิดขึ้นเนื่องจากขั้นตอนนี้ยังพับ
เมื่อคุณเพิ่มขั้นตอนที่ไม่พับ คุณจะเห็นตัวบ่งชี้อื่น ตัวอย่างเช่น ทําให้แต่ละคําเป็นตัวพิมพ์ใหญ่ ไม่เคยพับ ตัวบ่งชี้จะเปลี่ยน โดยแสดงให้เห็นว่าตามขั้นตอนนี้จะหยุดการพับ ตามที่กล่าวถึงก่อนหน้านี้ขั้นตอนก่อนหน้านี้ยังคงพับได้
เมื่อคุณเพิ่มขั้นตอนปลายทางเพิ่มเติมที่ขึ้นอยู่กับ ตัวพิมพ์ใหญ่แต่ละคําคําพวกเขาจะยังคงไม่พับ
อย่างไรก็ตาม ถ้าคุณลบคอลัมน์ที่คุณใช้ตัวพิมพ์ใหญ่ แผนคิวรีที่ปรับให้เหมาะสมสามารถพับได้อีกครั้ง ในผลลัพธ์ที่ผิดปกตินี้ขั้นตอนสุดท้ายจะพับแม้ว่าขั้นตอนก่อนหน้าจะไม่พับดังที่แสดงในภาพต่อไปนี้ ผลลัพธ์นี้แสดงให้เห็นว่าการพับขึ้นอยู่กับทั้งลําดับของขั้นตอนและการแปลงที่ใช้