Table.Combine ใช้สำหรับรวม list ของ table เข้าเป็น table เดียว ยับยั้ง append ตัว 1 แถวหลาย ๆ ตารางพร้อมกัน
| อาร์กิวเมนต์ | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|---|
| tables | list | List ของ tables ที่ต้องการรวมกัน เช่น {Table1, Table2, Table3} | |
| [columns]ไม่บังคับ | any | null | Optional – ระบุ column structure ของ result table หรือใช้ union ของทุก column จาก input tables |
[ ] = อาร์กิวเมนต์ที่ไม่บังคับ
Table.Combine รวม list ของ table เข้าเป็น table เดียว โดยแล้ว schema จากทุก table เข้าด้วยกัน ถ้ามี column ที่อยู่ใน table บางตัวแต่ไม่อยู่ในตัวอื่น จะเติม null ลงไปอัตโนมัติ
ที่เจ๋งคือมันทำให้เวลาต้อง append table หลาย ตัว ไม่ต้องเขียน Table.ExpandRecords สองครั้ง หรือ chain query ยาว ๆ ได้
ส่วนตัวผม มักใช้ Table.Combine เวลาต้องรวมข้อมูลจากหลาย worksheet หรือหลาย API endpoint ที่ structure มันต่างกัน ทำให้ combine ได้ง่ายขึ้นเยอะครับ 😎
รวม 3 tables เข้าเป็น table เดียว 4 แถว ทุก column เหมือนกันเลยใช้ได้เลย
รวม tables ที่มี columns ต่างกัน มันจะทำ union ของ columns ทั้งหมด แล้วเติม null ให้ column ที่ขาดหาย
ระบุ column ที่ต้องการใน parameter ที่สอง ถ้า table source มี column อื่นมากมาย มันจะเลือกแค่ column ที่ระบุ
รวม data จากหลาย region (3 tables) แล้วเพิ่ม column Region ด้วย Table.AddColumn ตอนจบ ทำให้ได้ complete dataset
รวม tables แล้วใช้ Table.SelectRows เพื่อ filter เฉพาะ sales >= 1800
Table.Append รวม 2 tables เพียงอย่างเดียว ส่วน Table.Combine รวม list ของ tables ได้ กดหลาย ๆ ตัวพร้อมกัน ถ้ามี tables มาก ๆ Table.Combine จะเขียนสั้นกว่า
มันจะทำ union ของ columns ทั้งหมด และเติม null ลงไปให้ column ที่ขาด ตัวอย่าง Table A มี [Name, Email] แต่ Table B มี [Name, Phone] ผลลัพธ์จะมี [Name, Email, Phone] โดย Email ใน rows จาก B จะเป็น null
ส่ง list ของ column names ในพารามิเตอร์ที่สอง เช่น Table.Combine({T1, T2}, {"Name", "Amount"}) มันจะเลือกแค่ 2 columns นี้
ถ้า list ว่าง {} จะได้ error ถ้า table บางตัวว่าง มันก็จะรวมแต่ตัวที่มีข้อมูล ผลลัพธ์อาจเป็น empty table หรือมีแถวได้
ได้ แต่ต้องใช้ List ของ tables เช่น Table.Combine(List.Generate(…)) หรือ append query references ลงใน list ก่อน
ฟังก์ชันที่ผู้เขียนโยงไว้กับ Table.Combine จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
Table.AddColumn เพิ่มคอลัมน์ใหม่ลงในตารางโดยคำนวณค่าจากฟังก์ชันที่กำหนด ใช้คำสั่ง each เพื่ออ้างอิงข้อมูลในแต่ละแถว เช่น each [Price] * [Quantity] สามารถระบุชนิดข้อมูลได้เพื่อเพิ่มประสิทธิภาพและป้องกันข้อผิดพลาดจากการคาดเดาชนิดข้อมูล ทำงานแบบทีละแถวและเหมาะสำหรับสร้างคอลัมน์คำนวณ รวมข้อมูล ใช้เงื่อนไข และการแปลงข้อมูลต่างๆ ใช้ร่วมกับฟังก์ชัน Table.TransformColumns สำหรับแก้ไขคอลัมน์เดิม Table.AddIndexColumn สำหรับเพิ่มหมายเลขลำดับ Table.SelectRows สำหรับกรองแถว Table.FromRecords สำหรับสร้างตารางจากข้อมูล Text.Combine สำหรับรวมข้อความ Number.Round สำหรับปัดเศษ Date.Year สำหรับดึงค่าปี และ Text.Upper สำหรับแปลงเป็นตัวพิมพ์ใหญ่ เพื่อสร้างกระบวนการแปลงข้อมูลที่สมบูรณ์
Table.Buffer บังคับโหลดตารางลงหน่วยความจำและแยกออกจากแหล่งข้อมูลต้นทาง ช่วยป้องกันการ fold และควบคุมเวลาประมวลผล
Table.FillUp เติมเต็มค่าว่าง (null) ด้วยค่าจากแถวด้านล่างขึ้นไป ทำงานตรงกันข้ามกับ FillDown ใช้สำหรับจัดการข้อมูลที่ค่าสรุปอยู่ล่างสุด
แปลง List ของ Record เป็นตาราง โดยแต่ละ Record กลายเป็นหนึ่งแถว เหมาะสำหรับข้อมูลจาก API หรือ JSON
Table.Join ใช้รวมตารางสองตารางโดยจับคู่ค่าในคอลัมน์กำหนด สนับสนุนทุกประเภท join (Inner, Left Outer, Right Outer, Full Outer, Anti, Semi) เหมือน SQL Join
Table.NestedJoin เชื่อมตารางสองตารางด้วยคีย์ที่กำหนด และสร้างคอลัมน์ใหม่ที่เก็บตารางย่อยของแถวที่จับคู่ได้ เหมาะกับงาน Merge ที่ต้องการเก็บรายละเอียดฝั่งขวาไว้เป็น nested table ก่อนจะ Expand หรือทำขั้นตอนต่อ
ฟังก์ชันสำหรับนับจำนวนแถวทั้งหมดในตาราง โดยคืนค่าเป็นตัวเลขครับ
Table.SelectRows เป็นฟังก์ชันสำหรับกรองตาราง (filter table) ใน Power Query โดยใช้ฟังก์ชันเงื่อนไข (condition function) เพื่อตรวจสอบแต่ละแถว ถ้าเงื่อนไขคืนค่า true จะเก็บแถวนั้นไว้ ถ้าเป็น false จะตัดทิ้ง สามารถใช้ keyword 'each' ร่วมกับการอ้างอิงคอลัมน์ด้วย [ColumnName] เพื่อเขียนเงื่อนไขได้สะดวก รองรับการกรองตามตัวเลข ข้อความ วันที่ การตรวจสอบค่า null และเงื่อนไขที่ซับซ้อนด้วย and/or operators ฟังก์ชันนี้รองรับ Query Folding ซึ่งช่วยเพิ่มประสิทธิภาพเมื่อทำงานกับ data source ขนาดใหญ่
Table.TransformColumnTypes เปลี่ยน Data Type ของคอลัมน์ที่ระบุให้เป็นประเภทใหม่ (เช่น Text เป็น Number, Date เป็น Text) โดยใช้ built-in conversion methods เบื้องหลัง รองรับการแปลงหลายคอลัมน์พร้อมกัน และสามารถระบุ culture parameter เพื่อจัดการ locale-specific formatting สำหรับวันที่และตัวเลข เหมาะสำหรับขั้นตอนเตรียมข้อมูลก่อน Load เข้า Data Model เพื่อป้องกัน conversion errors และเพิ่มประสิทธิภาพ ใช้ร่วมกับ Table.TransformColumns, Number.From, Text.From และ Date.From เมื่อต้องการ custom transformation logic
DeltaLake.Table ใช้ดึงข้อมูลจากตาราง Delta Lake โดยระบุที่อยู่ไดเรกทอรี่ของตาราง เหมาะสำหรับเชื่อมต่อกับ Data Lake หรือ Microsoft Fabric
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่