เปลี่ยนคอลัมน์แนวนอนเป็นแนวตั้ง

ในPower Query แปลงคอลัมน์ให้เป็นคู่ของแอตทริบิวต์-ค่า ที่คอลัมน์จะกลายเป็นแถวได้

ไดอะแกรมคอลัมน์เลิกเป็นpivot

แผนภาพที่แสดงตารางทางด้านซ้ายพร้อมคอลัมน์และแถวที่ว่างเปล่า และค่าแอตทริบิวต์ A1, A2 และ A3 เป็นส่วนหัวของคอลัมน์ คอลัมน์ A1 ประกอบด้วยค่า V1, V4 และ V7, A2 คอลัมน์ประกอบด้วยค่า V2, V5 และ V8 และคอลัมน์ A3 ประกอบด้วยค่า V3, V6 และ V9 เมื่อคอลัมน์ไม่มี Pivot ตารางทางด้านขวาของไดอะแกรมจะมีคอลัมน์และแถวที่ว่างเปล่า คอลัมน์แอตทริบิวต์ที่มีแถวเก้าแถว A1, A2 และ A3 ที่ซ้ํากันสามครั้ง และคอลัมน์ค่าที่มีค่า V1 ถึง V9

ตัวอย่างเช่น เมื่อระบุตารางดังต่อไปนี้ ที่ซึ่งแถวประเทศและคอลัมน์วันที่สร้างเมทริกซ์ของค่า จึงเป็นเรื่องยากที่จะวิเคราะห์ข้อมูลในลักษณะที่ปรับขนาดได้

ตัวอย่างตารางเริ่มต้นของคอลัมน์ Unpivot

ตารางที่มีคอลัมน์ Country ที่ตั้งค่าในชนิดข้อมูล Text และ 6/1/2020, 7/1/2020 และ 8/1/2020 จะตั้งเป็นชนิดข้อมูลจํานวนเต็ม คอลัมน์ Country ประกอบด้วย USA ในแถว 1, Canada ในแถว 2 และ Canada ในแถว 3

แต่คุณสามารถแปลงตารางให้เป็นตารางที่มีคอลัมน์ที่ไม่เปลี่ยนจากตารางที่เปลี่ยนจากตารางดังที่แสดงในรูปต่อไปนี้ ในตารางที่แปลงแล้ว คุณสามารถใช้วันที่เป็นแอตทริบิวต์เพื่อกรองได้ง่ายขึ้น

ตารางเป้าหมายตัวอย่างของคอลัมน์ Unpivot

ตารางที่มีคอลัมน์ประเทศซึ่งตั้งค่าเป็นชนิดข้อมูลข้อความ คอลัมน์แอตทริบิวต์ที่ตั้งค่าเป็นชนิดข้อมูลข้อความ และคอลัมน์ค่าที่ตั้งค่าเป็นชนิดข้อมูลจํานวนเต็ม คอลัมน์ Country ประกอบด้วยสหรัฐอเมริกาในสามแถวแรก แคนาดา ในสามแถวถัดไป และ Canada ในสามแถวสุดท้าย คอลัมน์ Attribute ประกอบด้วย 6/1/2020 ในแถวแรก ที่ใหม่กว่า และเจ็ดแถว, 7/1/2020 ในแถวที่สอง, ห้า และแปดแถว และ 8/1/2020 ในแถวที่สาม หก และแถวที่ ninth

คีย์ในการแปลงนี้คือ คุณมีชุดวันที่ในตารางที่ควรเป็นส่วนหนึ่งของคอลัมน์เดียว ค่าที่เกี่ยวข้องสําหรับแต่ละวันที่และประเทศควรอยู่ในคอลัมน์ที่แตกต่างกัน ซึ่งสร้างคู่แอตทริบิวต์-ค่าได้อย่างมีประสิทธิภาพ

Power Queryจะสร้างคู่ของแอตทริบิวต์-ค่าเสมอโดยใช้สองคอลัมน์:

  • แอตทริบิวต์: ชื่อของส่วนหัวของคอลัมน์ที่ไม่ได้เปลี่ยนจากทิศทาง
  • ค่า: ค่าที่อยู่ใต้ส่วนหัวของคอลัมน์ที่เปลี่ยนคอลัมน์ที่ไม่เป็นไปในทิศทางเดียวกัน

มีหลายจุดในส่วนติดต่อผู้ใช้ที่คุณสามารถค้นหา คอลัมน์ Unpivot ได้ คุณสามารถคลิกขวาที่คอลัมน์ที่คุณต้องการยกเลิกควบคุมหรือคุณสามารถเลือกสั่งจากแท็บ แปลง ใน ribbon ได้

คลิกขวาที่การดําเนินการเพื่อยกเลิกการเลือกคอลัมน์ตามต้องการ

ยกเลิกควบคุมคอลัมน์ในแท็บแปลง

มีสามวิธีที่คุณสามารถยกเลิกควบคุมคอลัมน์จากตาราง:

  • เปลี่ยนคอลัมน์แนวนอนเป็นแนวตั้ง
  • เลิกใช้คอลัมน์อื่นในpipi
  • เลิกใช้เฉพาะคอลัมน์ที่เลือก

เปลี่ยนคอลัมน์แนวนอนเป็นแนวตั้ง

ในสถานการณ์สมมติที่อธิบายไว้ข้างต้น ก่อนอื่นคุณต้องเลือกคอลัมน์ที่คุณต้องการยกเลิกการเปลี่ยนจากคอลัมน์ที่ต้องการเปลี่ยน คุณสามารถเลือกCtrl ได้ มากเท่าที่คุณต้องการ ในสถานการณ์สมมตินี้ คุณต้องการเลือกคอลัมน์ทั้งหมดยกเว้น คอลัมน์ที่มีชื่อว่า ประเทศ หลังจากเลือกคอลัมน์แล้ว ให้คลิกขวาที่คอลัมน์ใด ๆ ที่เลือก จากนั้นเลือก ยกเลิกการเลือกคอลัมน์แบบpivot

ตารางที่มีการเลือกคอลัมน์ 6/1/2020, 7/1/2020 และ 8/1/2020 และการเลือกคอลัมน์ Unpivot ในเมนูทางลัด

ผลลัพธ์ของการดําเนินการนั้นจะให้ผลลัพธ์ที่แสดงในรูปภาพต่อไปนี้

ยกเลิก pivot คอลัมน์ตารางสุดท้าย

ตารางที่มีคอลัมน์ประเทศซึ่งตั้งค่าเป็นชนิดข้อมูลข้อความ คอลัมน์แอตทริบิวต์ที่ตั้งค่าเป็นชนิดข้อมูลข้อความ และคอลัมน์ค่าที่ตั้งค่าเป็นชนิดข้อมูลจํานวนเต็ม คอลัมน์ Country ประกอบด้วยสหรัฐอเมริกาในสามแถวแรก แคนาดา ในสามแถวถัดไป และ Canada ในสามแถวสุดท้าย คอลัมน์ Attribute ประกอบด้วย 6/1/2020 ในแถวแรก ที่ใหม่กว่า และเจ็ดแถว, 7/1/2020 ในแถวที่สอง, ห้า และแปดแถว และ 8/1/2020 ในแถวที่สาม หก และแถวที่ ninth นอกจากนี้ รายการคอลัมน์ Unpivot จะถูกเน้นในบานหน้าต่างการตั้งค่าคิวรี และรหัสภาษา M จะแสดงในแถบสูตร

ข้อควรพิจารณาพิเศษ

หลังจากสร้างคิวรีของคุณจากขั้นตอนข้างต้นแล้ว สมมติว่าตารางเริ่มต้นของคุณได้รับการอัปเดตเพื่อให้มีลักษณะเหมือนสกรีนช็อตต่อไปนี้

คอลัมน์ Unpivot อัปเดตตารางแหล่งข้อมูลแล้ว

ตารางที่มีคอลัมน์ Country, 6/1/2020, 7/1/2020 และ 8/1/2020 พร้อมกับส่วนเพิ่มเติมของคอลัมน์ 9/1/2020 คอลัมน์ Country ยังประกอบด้วยค่าสหรัฐอเมริกา แคนาดา และสไปเดอร์ ยังได้เพิ่มสหราชอาณาจักรไปยังแถวที่สี่ และเม็กซิโกถูกเพิ่มไปยังแถวที่ห้าด้วย

โปรดสังเกตว่า คุณได้เพิ่มคอลัมน์ใหม่เป็นวันที่ 9/1/2020 (1 กันยายน 2020) และสองแถวใหม่ของประเทศสหราชอาณาจักรและเม็กซิโก

ถ้าคุณรีเฟรชคิวรีของคุณ คุณจะสังเกตเห็นว่าการดําเนินการนี้จะเสร็จสิ้นในคอลัมน์ที่อัปเดตแล้ว แต่จะไม่มีผลต่อคอลัมน์ที่ที่ไม่ได้เลือกครั้งแรก (ประเทศ ในตัวอย่างนี้) ซึ่งหมายความว่า คอลัมน์ใหม่ใด ๆ ที่ถูกเพิ่มไปยังตารางต้นฉบับจะถูกยกเลิก pivot ด้วย

รูปภาพต่อไปนี้แสดงคิวรีของคุณจะมีลักษณะอย่างไรหลังจากการรีเฟรชด้วยตารางต้นทางที่อัปเดตใหม่

ตารางที่อัปเดตขั้นสุดท้ายของคอลัมน์ Unpivot

ตารางที่มีคอลัมน์ ประเทศ แอตทริบิวต์ และ ค่า สี่แถวแรกของคอลัมน์ Country ประกอบด้วยสหรัฐอเมริกา สี่แถวที่สองประกอบด้วย Canada, สี่แถวที่สามประกอบด้วย Canada, Four Rows ที่สี่ประกอบด้วยสหราชอาณาจักร และสี่แถวที่ห้าประกอบด้วยเม็กซิโก คอลัมน์ Attribute ประกอบด้วย 6/1/2020, 7/1/2020, 8/1/2020 และ 9/1/2020 ในสี่แถวแรกซึ่งซ้ํากันในแต่ละประเทศ

เลิกใช้คอลัมน์อื่นในpipi

คุณยังสามารถเลือกคอลัมน์ที่คุณไม่ต้องการเปลี่ยนจากคอลัมน์ที่ต้องการเปลี่ยนจาก pivot และยกเลิกการเลือกคอลัมน์ที่เหลือในตาราง การดําเนินการนี้ คือการที่ยกเลิกคอลัมน์อื่น ๆ เข้ามามีบทบาทต่อไป

ตารางที่มีเมนูทางลัดคอลัมน์ประเทศที่เลือกและเมนูคอลัมน์อื่น ๆ Unpivot ในเมนูจะถูกเน้น

ผลลัพธ์ของการดําเนินการนั้นจะให้ผลลัพธ์เดียวกันกับที่คุณได้จาก คอลัมน์ Unpivot

ตารางเป้าหมายตัวอย่างของคอลัมน์ Unpivot

ตารางที่มีคอลัมน์ประเทศซึ่งตั้งค่าเป็นชนิดข้อมูลข้อความ คอลัมน์แอตทริบิวต์ที่ตั้งค่าเป็นชนิดข้อมูลข้อความ และคอลัมน์ค่าที่ตั้งค่าเป็นชนิดข้อมูลจํานวนเต็ม คอลัมน์ Country ประกอบด้วยสหรัฐอเมริกาในสามแถวแรก แคนาดา ในสามแถวถัดไป และ Canada ในสามแถวสุดท้าย คอลัมน์ Attribute ประกอบด้วย 6/1/2020 ในแถวแรก ที่ใหม่กว่า และเจ็ดแถว, 7/1/2020 ในแถวที่สอง, ห้า และแปดแถว และ 8/1/2020 ในแถวที่สาม หก และแถวที่ ninth

หมายเหตุ

การแปลงนี้มีความสําคัญอย่างยิ่งต่อคิวรีที่มีจํานวนคอลัมน์ที่ไม่รู้จัก การดําเนินการจะยกเลิกคอลัมน์ทั้งหมดจากตารางของคุณ ยกเว้นคอลัมน์ที่คุณเลือก นี่คือโซลูชันที่ดีที่สุดหากแหล่งข้อมูลของสถานการณ์ของคุณมีคอลัมน์วันที่ใหม่ในการรีเฟรชเนื่องจากรายการเหล่านั้นจะถูกเลือกและไม่ได้เลือกเป็นไป

ข้อควรพิจารณาพิเศษ

คล้ายกับการ ดําเนินการคอลัมน์ Unpivot ถ้ามีการรีเฟรชคิวรีของคุณ และมีการเลือกข้อมูลเพิ่มเติมจากแหล่งข้อมูล คอลัมน์ทั้งหมดจะถูกยกเลิกpivoed ยกเว้นคอลัมน์ที่เลือกไว้ก่อนหน้านี้

เมื่อต้องการแสดงตัวอย่างนี้ สมมติว่าคุณมีตารางใหม่เหมือนกับตารางในรูปภาพต่อไปนี้

ตัวอย่างตารางต้นทาง unpivot

ตารางที่มีคอลัมน์ Country, 6/1/2020, 7/1/2020, 8/1/2020 และ 9/1/2020 โดยตั้งค่าคอลัมน์ทั้งหมดเป็นชนิดข้อมูล Text คอลัมน์ Country ประกอบด้วย จากบนลงล่าง สหรัฐอเมริกา แคนาดา สลิง สหราชอาณาจักร และเม็กซิโก

คุณสามารถเลือกคอลัมน์ Country จากนั้นเลือกคอลัมน์ Unpivot คอลัมน์ อื่น ซึ่งจะให้ผลลัพธ์ดังต่อไปนี้

ตัวอย่างยกเลิก pivotvot คอลัมน์อื่น ๆ ที่อัปเดตตารางสุดท้าย

ตารางที่มีคอลัมน์ ประเทศ แอตทริบิวต์ และ ค่า คอลัมน์ประเทศและแอตทริบิวต์จะถูกตั้งค่าเป็นชนิดข้อมูลข้อความ คอลัมน์ ค่า ถูกตั้งค่าเป็นชนิดข้อมูล ค่าเต็ม สี่แถวแรกของคอลัมน์ Country ประกอบด้วยสหรัฐอเมริกา สี่แถวที่สองประกอบด้วย Canada, สี่แถวที่สามประกอบด้วย Canada, Four Four rows ประกอบด้วย UK และสี่แถวที่ห้าประกอบด้วยเม็กซิโก คอลัมน์ Attribute ประกอบด้วย 6/1/2020, 7/1/2020, 8/1/2020 และ 9/1/2020 ในสี่แถวแรกซึ่งซ้ํากันในแต่ละประเทศ

เลิกใช้เฉพาะคอลัมน์ที่เลือก

วัตถุประสงค์ของตัวเลือกสุดท้ายนี้คือ ยกเลิกคอลัมน์ที่ระบุที่ระบุออกจากตารางของคุณเท่านั้น ซึ่งสิ่งสําคัญคือสถานการณ์ที่คุณจัดการกับจํานวนคอลัมน์ที่ไม่รู้จักจากแหล่งข้อมูลของคุณ และคุณต้องการเปลี่ยนคอลัมน์ที่เลือกในขั้นตอนที่ระบุเท่านั้น

เมื่อต้องดําเนินการนี้ เลือกคอลัมน์เพื่อยกเลิกpivot ซึ่งในตัวอย่างนี้เป็นคอลัมน์ ทั้งหมดยกเว้นคอลัมน์ ประเทศ จากนั้นคลิกขวาที่คอลัมน์ใด ๆ ที่คุณเลือก จากนั้นเลือก ยกเลิกเลือก เฉพาะคอลัมน์ ที่เลือก

ตารางที่มีการเลือกคอลัมน์ 6/1/2020, 7/1/2020 และ 8/1/2020 และเมนูทางลัดจะเน้นเฉพาะคอลัมน์ที่ไม่ pivot ที่เลือกเท่านั้น

สังเกตว่าการดําเนินการนี้จะให้ผลลัพธ์เดียวกับตัวอย่างก่อนหน้านี้อย่างไร

ยกเลิกเลือกคอลัมน์ในตารางสุดท้ายเท่านั้น

ตารางที่มีคอลัมน์ประเทศซึ่งตั้งค่าเป็นชนิดข้อมูลข้อความ คอลัมน์แอตทริบิวต์ที่ตั้งค่าเป็นชนิดข้อมูลข้อความ และคอลัมน์ค่าที่ตั้งค่าเป็นชนิดข้อมูลจํานวนเต็ม คอลัมน์ Country ประกอบด้วยสหรัฐอเมริกาในสามแถวแรก แคนาดา ในสามแถวถัดไป และ Canada ในสามแถวสุดท้าย คอลัมน์ Attribute ประกอบด้วย 6/1/2020 ในแถวแรก ที่ใหม่กว่า และเจ็ดแถว, 7/1/2020 ในแถวที่สอง, ห้า และแปดแถว และ 8/1/2020 ในแถวที่สาม หก และแถวที่ ninth

ข้อควรพิจารณาพิเศษ

หลังจากรีเฟรชแล้ว หากตารางแหล่งข้อมูลของเราเปลี่ยนไปมีคอลัมน์ 9/1/2020 ใหม่ และแถวใหม่ที่ใช้กับสหราชอาณาจักรและเม็กซิโก ผลลัพธ์ของคิวรีจะแตกต่างจากตัวอย่างก่อนหน้านี้ สมมติว่าตารางต้นทางของเราหลังจากรีเฟรช การเปลี่ยนแปลงไปยังตารางในภาพต่อไปนี้

ยกเลิกจัดตารางแหล่งข้อมูลที่อัปเดตแล้ว

ผลลัพธ์ของคิวรีของคุณจะมีลักษณะเหมือนกับรูปภาพต่อไปนี้

คอลัมน์ที่เลือก Unpivot อัปเดตตารางสุดท้ายเท่านั้น

จะมีลักษณะเช่นนี้เนื่องจากการดําเนินการ unpivot ถูกปรับใช้เฉพาะบนคอลัมน์ 6/1/2020, 7/1/2020 และ 8/1/2020 ดังนั้น คอลัมน์ที่มีส่วนหัว 9/1/2020 จะยังคงไม่เปลี่ยนแปลง