Table.ToRows แปลงตารางให้เป็น List ของ List โดยแต่ละ List ย่อยแทนข้อมูล 1 แถว ไม่มีชื่อคอลัมน์ เหมาะสำหรับส่งออกข้อมูลเป็น JSON/CSV หรือประมวลผลแถวโดยไม่สนใจชื่อฟิลด์
| อาร์กิวเมนต์ | ชนิด | คำอธิบาย |
|---|---|---|
| table | table | ตารางที่ต้องการแปลงให้เป็น List ของ List |
Table.ToRows ฟังก์ชันแปลงตารางให้เป็น List โดยที่สมาชิกแต่ละตัวใน List ใหญ่ คือ List ย่อยที่มีค่าจาก 1 แถวในตาราง เรียงตามลำดับคอลัมน์ และสำคัญคือ ไม่มีชื่อคอลัมน์มาด้วย เหมาะสำหรับสถานการณ์ที่ต้องแปลงตารางเป็น CSV หรือ JSON arrays หรือประมวลผลข้อมูลทีละแถวโดยไม่จำเป็นต้องรู้ชื่อคอลัมน์
ที่เจ๋งคือ ถ้าคุณเพียงแค่ต้องการค่าข้อมูล ไม่ต้องการ Field Names ก็ใช้ Table.ToRows ดีกว่า Table.ToRecords เนื่องจาก structure จะเรียบง่ายกว่า
ส่วนตัวผมชอบใช้ Table.ToRows เวลาต้องส่งข้อมูล API ที่ต้องการ array-of-arrays format หรือตอนแปลง Power Query ไป JSON ให้เป็นตัวเลขเท่านั้น ก็ใช้ได้เก่ง ไม่ต้องเพิ่ม Field Names ที่ไม่จำเป็น
ใช้ Text.Combine ร่วมกับ Table.ToRows เพื่อแปลงข้อมูลในตารางให้เป็นรูปแบบ CSV
เหมาะสำหรับกรณีที่ต้องการประมวลผลข้อมูลแบบ Element-by-Element หรือเมื่อชื่อคอลัมน์ไม่สำคัญ
ตาราง 3 แถว 3 คอลัมน์ ถูกแปลงเป็น List ของ 3 Lists ย่อย แต่ละ List ย่อยประกอบด้วยค่าจากแถวนั้นเท่านั้น ไม่มี Field Names
แปลงตารางเป็น List of Lists แล้วจึง combine ข้อมูลให้เป็น CSV format ที่มี comma delimiter และ line feed
Table.ToRows ⟶ {{1, "Active"}} (List ของ List) | Table.ToRecords ⟶ {[ID = 1, Status = "Active"]} (List ของ Record ที่มี Field Names)
Table.ToRows คืน List ของ List (เช่น {{1, 2}, {3, 4}}) โดยไม่มีชื่อคอลัมน์ ส่วน Table.ToRecords คืน List ของ Record (เช่น {[A=1, B=2], [A=3, B=4]}) ที่มี Field Names หากคุณต้องการชื่อคอลัมน์เพื่อการประมวลผลต่อไป ให้ใช้ Table.ToRecords แต่ถ้าแค่ต้องการค่าข้อมูลแบบง่ายๆ ให้ใช้ Table.ToRows
ใช้เวลาต้องการ: (1) ส่งออกเป็น CSV/JSON array format, (2) ประมวลผลแถวโดยไม่จำเป็นต้องรู้ชื่อคอลัมน์, (3) ส่งข้อมูลไปยัง API ที่ต้องการ array-of-arrays, (4) สร้าง List แบบง่ายๆ เพื่อใช้งานต่อไป
ค่าจะเรียงตามลำดับของคอลัมน์ในตารางจากซ้ายไปขวา เช่น ถ้าตารางมี คอลัมน์ A, B, C ลำดับจะเป็น {valueA, valueB, valueC}
จะคืน List ว่าง {} (empty list) ไม่ใช่ error
ฟังก์ชันที่ผู้เขียนโยงไว้กับ Table.ToRows จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
List.Transform ใช้สำหรับสร้างลิสต์ใหม่โดยนำฟังก์ชันไปประมวลผลแต่ละตัวในลิสต์เดิม
List.Zip จะรับ List ของ List (เช่น {{List1}, {List2}}) เป็น Input แล้วรวมสมาชิกที่อยู่ในตำแหน่ง Index เดียวกันของแต่ละ List ย่อย มารวมกันเป็น List ย่อยชุดใหม่ใน Output List
Table.ToColumns แปลงตาราง (Table) ให้เป็น List ของ List โดยแต่ละ List ย่อยแทนข้อมูลจากคอลัมน์เดียว เรียงตามลำดับคอลัมน์จากซ้ายไปขวา ส่วนกลับกันของ Table.FromColumns
Table.ToRecords แปลงตารางให้เป็น List โดยแต่ละแถวกลายเป็น Record พร้อมชื่อคอลัมน์เป็น Field Name ทำให้สะดวกในการวนลูปแบบมีโครงสร้าง
Text.Combine ใช้สำหรับรวมข้อความหลายตัวจาก List เข้าด้วยกันเป็นข้อความเดียว โดยสามารถเลือกใช้ตัวคั่น (separator) เช่น ลูกน้ำ เครื่องหมายขีด หรือ space ได้ เหมาะสำหรับสร้างชื่อเต็ม ที่อยู่ หรือรหัสประจำตัวจากส่วนประกอบย่อยๆ
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่