ตาราง
หมายเหตุ
Microsoft Power Fx เป็นชื่อใหม่สำหรับภาษาสูตรของแอปพื้นที่ทำงาน บทความเหล่านี้คืองานที่อยู่ระหว่างดำเนินการ ในขณะที่เราแยกภาษาจากแอปพื้นที่ทำงาน รวมเข้ากับผลิตภัณฑ์ Microsoft Power Platform อื่นๆ และทำให้พร้อมใช้งานในรูปแบบโอเพนซอร์ส เริ่มต้นด้วย ภาพรวมของ Microsoft Power Fx สำหรับการแนะนำภาษา
ใน Microsoft Power Fx คุณสามารถเขียนสูตรที่เข้าถึงข้อมูลได้ใน Microsoft Excel, SharePoint, SQL Server และแหล่งข้อมูลอื่นๆ ที่จัดเก็บข้อมูลในเรกคอร์ดและตาราง เมื่อต้องการทำงานอย่างมีประสิทธิภาพกับข้อมูลประเภทนี้ ให้ทบทวนหลักการที่เกี่ยวข้องกับโครงสร้างเหล่านี้
- เรกคอร์ดมีหมวดหมู่ข้อมูลเกี่ยวกับบุคคล สถานที่ หรือสิ่งของอย่างน้อยหนึ่งหมวดหมู่ ตัวอย่างเช่น เรกคอร์ดอาจมีชื่อ ที่อยู่อีเมล และหมายเลขโทรศัพท์ของลูกค้าหนึ่งราย เครื่องมืออื่น ๆ จะอ้างถึงเรกคอร์ดเป็น "แถว" หรือ "รายการ"
- ตารางจะเก็บเรกคอร์ดอย่างน้อยหนึ่งเรกคอร์ดที่มีข้อมูลประเภทเดียวกัน ตัวอย่างเช่น ตารางอาจมีชื่อ ที่อยู่อีเมล และหมายเลขโทรศัพท์ของลูกค้า 50 คน
คุณสามารถสร้างสูตรต่าง ๆ ที่ใช้ชื่อของตารางเป็นอาร์กิวเมนต์ เช่นเดียวกับสูตรใน Excel ที่ใช้การอ้างอิงเซลล์อย่างน้อยหนึ่งเซลล์เป็นอาร์กิวเมนต์ บางสูตรใน Power Fx จะคืนค่าตารางที่แสดงอาร์กิวเมนต์อื่น ๆ ที่คุณระบุ ตัวอย่างเช่น คุณอาจสร้างสูตร:
- เพื่ออัปเดตเรกคอร์ดในตารางโดยระบุให้ตารางนั้นเป็นหนึ่งในหลายอาร์กิวเมนต์สำหรับฟังก์ชัน Patch
- เมื่อต้องการเพิ่ม ลบ และตั้งชื่อคอลัมน์ใหม่ในตารางโดยระบุให้ตารางเป็นอาร์กิวเมนต์สำหรับฟังก์ชัน AddColumns, DropColumns หรือ RenameColumns ฟังก์ชันเหล่านั้นจะไม่ปรับเปลี่ยนตารางต้นฉบับ แต่ฟังก์ชันจะคืนค่าตารางอื่นตามอาร์กิวเมนต์อื่น ๆ ที่คุณระบุแทน
องค์ประกอบของตาราง
เรกคอร์ด
แต่ละเรกคอร์ดประกอบด้วยข้อมูลของบุคคล สถานที่ หรือสิ่งของ อย่างน้อยหนึ่งประเภท ตัวอย่างด้านบนแสดงเรกคอร์ดสำหรับแต่ละผลิตภัณฑ์ (ช็อกโกแลต ขนมปัง และ น้ำ) และคอลัมน์สำหรับข้อมูลแต่ละประเภท (ราคา ปริมาณที่ถือครอง และ ปริมาณที่สั่งซื้อ)
ในสูตร คุณสามารถอ้างถึงเรกคอร์ดได้โดยไม่ต้องอยู่ในบริบทของตาราง โดยใช้วงเล็บปีกกา ยกตัวอย่างเช่น เรกคอร์ดนี้ { ชื่อ: "สตรอเบอรี่", ราคา: 7.99 } ไม่ได้เกี่ยวข้องกับตาราง โปรดทราบว่าชื่อฟิลด์ เช่น ชื่อ และ ราคา ในตัวอย่างนั้น ไม่ได้อยู่ภายในเครื่องหมายอัญประกาศ
ฟิลด์
ฟิลด์คือชิ้นส่วนของข้อมูลหนึ่งในเรกคอร์ด คุณสามารถมองภาพหมวดหมู่ของฟิลด์นี้เป็นในคอลัมน์สำหรับเรกคอร์ดนี้โดยเฉพาะ
เช่นเดียวกับตัวควบคุม คุณอ้างถึงฟิลด์ของเรกคอร์ดโดยใช้ .ตัวดำเนินการ บนเรกคอร์ด ตัวอย่างเช่น First(Products).Name จะคืนค่าฟิลด์ ชื่อ ของเรกคอร์ดแรกในตาราง ผลิตภัณฑ์
ฟิลด์สามารถมีเรกคอร์ดหรือตารางอื่น เช่นเดียวกับที่ตัวอย่างของฟังก์ชัน GroupBy แสดงให้เห็น คุณสามารถซ้อนเรกคอร์ดและตารางได้มากเท่าที่ต้องการ
คอลัมน์
คอลัมน์อ้างถึงฟิลด์เดียวกันสำหรับหนึ่งเรกคอร์ดเป็นอย่างต่ำในตาราง ในตัวอย่างข้างต้น แต่ละผลิตภัณฑ์มีฟิลด์ราคา และราคานั้นอยู่ในคอลัมน์เดียวกันสำหรับผลิตภัณฑ์ทั้งหมด ตารางด้านบนมีสี่คอลัมน์ แสดงตามแนวนอนด้านบน:
- ชื่อ
- ราคา
- ปริมาณในมือ
- จำนวนในการสั่งซื้อ
ชื่อคอลัมน์แสดงถึงข้อมูลในคอลัมน์
ค่าทั้งหมดภายในคอลัมน์เป็นข้อมูลชนิดเดียวกัน ในตัวอย่างข้างต้น คอลัมน์ "ปริมาณที่ถือครอง" มีตัวเลขอยู่เสมอและไม่สามารถมีสตริง เช่น "12 หน่วย" สำหรับเรกคอร์ดหนึ่ง ๆ ได้ ค่าของฟิลด์อาจ ว่างเปล่า
คุณอาจเรียกคอลัมน์เป็น "ฟิลด์" ในเครื่องมืออื่น
ตาราง
ตารางมีอย่างน้อยหนึ่งเรกคอร์ด โดยแต่ละเรกคอร์ดมีหลายฟิลด์ที่มีชื่อที่สอดคล้องกันกับทุกเรกคอร์ด
ตารางใด ๆ ที่ถูกเก็บไว้ในแหล่งข้อมูลหรือคอลเลกชันที่มีชื่อ ซึ่งคุณใช้เพื่ออ้างถึงตารางและส่งผ่านไปยังฟังก์ชันที่นับตารางเป็นอาร์กิวเมนต์ ตารางยังสามารถเป็นผลลัพธ์ของฟังก์ชันหรือสูตร
เช่นเดียวกับตัวอย่างต่อไปนี้ คุณสามารถแสดงตารางในสูตรได้โดยใช้ฟังก์ชัน Table กับชุดของเรกคอร์ดซึ่งคุณระบุในวงเล็บปีกกา
Table( { Value: "Strawberry" }, { Value: "Vanilla" } )
คุณยังสามารถกำหนดตารางแบบคอลัมน์เดียวด้วยวงเล็บเหลี่ยมได้ วิธีเขียนที่ให้ผลลัพธ์เดียวกับวิธีทางด้านบน:
[ "Strawberry", "Vanilla" ]
สูตรของตาราง
ใน Excel และ Power Fx คุณใช้สูตรเพื่อจัดการตัวเลขและสตริงข้อความด้วยวิธีที่คล้ายกัน:
- ใน Excel กรอกค่า เช่น 42 ในเซลล์ A1 จากนั้นพิมพ์สูตรเช่น A1+2 ในเซลล์อื่นเพื่อแสดงค่าของ 44
- ใน Power Apps ตั้งค่าคุณสมบัติ Default ของ Slider1 เป็น 42 และตั้งค่าคุณสมบัติ ข้อความ ของป้ายชื่อเป็น Slider1.Value + 2 เพื่อแสดงค่า 44
ในทั้งสองกรณี ค่าที่คำนวณจะเปลี่ยนแปลงโดยอัตโนมัติถ้าคุณเปลี่ยนค่าของอาร์กิวเมนต์ (ตัวอย่างเช่น ตัวเลขในเซลล์ A1 หรือค่าของ Slider1)
ในทำนองเดียวกัน คุณสามารถใช้สูตรเพื่อเข้าถึงและจัดการกับข้อมูลในตารางและเรกคอร์ดได้ คุณสามารถใช้ชื่อของตารางเป็นอาร์กิวเมนต์ในสูตรบางสูตร เช่น Min(แค็ตตาล็อก, ราคา) เพื่อแสดงค่าต่ำสุดในคอลัมน์ ราคา ของตาราง แค็ตตาล็อก สูตรอื่น ๆ จะคืนค่าทั้งตาราง เช่น RenameColumns(แค็ตตาล็อก, "ราคา", "ต้นทุน") ซึ่งส่งกลับเรกคอร์ดทั้งหมดจากตาราง แค็ตตาล็อก แต่เปลี่ยนชื่อของคอลัมน์ ราคา เป็น ต้นทุน
เช่นเดียวกับตัวเลข สูตรที่เกี่ยวข้องกับตารางและเรกคอร์ดจะถูกคำนวณใหม่โดยอัตโนมัติเป็นตารางเบื้องต้นหรือการเปลี่ยนแปลงของเรกคอร์ด ถ้าต้นทุนของผลิตภัณฑ์ในตาราง แค็ตตาล็อก ถูกลดลงต่ำกว่าค่าต่ำสุดเดิม ค่าที่ส่งกลับของสูตร Min จะถูกเปลี่ยนแปลงให้เข้ากันโดยอัตโนมัติ
คุณสมบัติฟังก์ชันตารางและตัวควบคุม
พิจารณาฟังก์ชัน Lower หากตัวแปร welcome มีสตริงข้อความ "Hello, World" สูตร Lower(welcome) คืนค่า "hello, world" ฟังก์ชันนี้จะไม่เปลี่ยนค่าในตัวแปรนั้น แต่อย่างใด Lower เป็นฟังก์ชันที่บริสุทธิ์โดยจะประมวลผลเฉพาะอินพุตและสร้างเอาต์พุตเท่านั้น แค่นั้น; ไม่มีผลข้างเคียง ฟังก์ชั่นทั้งหมดใน Excel และฟังก์ชั่นส่วนใหญ่ใน Power Fx เป็นฟังก์ชั่นบริสุทธิ์ซึ่งช่วยให้คำนวณหรือคำนวณเวิร์กบุ๊กหรือแอปโดยอัตโนมัติ
Power Fx มอบชุดของฟังก์ชั่นที่ทำงานบนตารางในลักษณะเดียวกัน ฟังก์ชั่นเหล่านี้ใช้ตารางเป็นอินพุตและกรอง เรียงลำดับ เปลี่ยน ลด และสรุปตารางข้อมูลทั้งหมด ในความเป็นจริง Lower และฟังก์ชั่นอื่น ๆ อีกมากมายที่มักจะรับค่าเดียวยังสามารถใช้ตารางคอลัมน์เดียวเป็นอินพุต
ฟังก์ชันจำนวนมากใช้ตารางคอลัมน์เดี่ยวเป็นอินพุต หากทั้งตารางมีเพียงหนึ่งคอลัมน์ คุณสามารถระบุได้ตามชื่อ หากตารางมีหลายคอลัมน์ คุณสามารถระบุหนึ่งในคอลัมน์เหล่านั้นโดยใช้ไวยากรณ์ Table.Column ตัวอย่างเช่น Products.Name คืนค่าตารางคอลัมน์เดียวที่มีเพียงค่า ชื่อ จากตาราง ผลิตภัณฑ์
คุณสามารถปรับแต่งตารางใหม่ได้อย่างสมบูรณ์ตามที่คุณต้องการโดยใช้ฟังก์ชัน AddColumns, RenameColumns, ShowColumns, or DropColumns ฟังก์ชั่นเหล่านี้จะเปลี่ยนเฉพาะเอาต์พุต ไม่ใช่ข้อมูลหลัก
สูตรแบบพฤติกรรม
ฟังก์ชั่นอื่น ๆ ได้รับการออกแบบมาโดยเฉพาะเพื่อแก้ไขข้อมูลและมีผลข้างเคียง เนื่องจากฟังก์ชั่นเหล่านี้ไม่บริสุทธิ์ คุณต้องสร้างอย่างระมัดระวัง และไม่ใช้ในในการคำนวณค่าในแอปโดยอัตโนมัติ คุณสามารถใช้ฟังก์ชันเหล่านี้ภายใน สูตรแบบพฤติกรรม เท่านั้น
ขอบเขตเรกคอร์ด
บางฟังก์ชันทำงานโดยคำนวณสูตรกับเรกคอร์ดทั้งหมดของตารางทีละเรกคอร์ด ผลลัพธ์ของสูตรจะถูกนำไปใช้ในหลายวิธี:
- AddColumns - สูตรนี้จะให้ค่าของฟิลด์ที่เพิ่มเข้ามา
- ค่าเฉลี่ย, ค่าสูงสุด, ค่าต่ำสุด, ผลรวม, ค่าคงที่, VarP - สูตรนี้ให้ค่าสำหรับการรวม
- ตัวกรอง , การค้นหา - สูตรกำหนดว่าควรจะรวมระเบียนไว้ในผลลัพธ์หรือไม่
- Concat - สูตรกำหนดสตริงที่จะเชื่อมเข้าด้วยกัน
- Distinct - สูตรจะคืนค่าที่ใช้ระบุระเบียนที่ซ้ำกัน
- ForAll - สูตรสามารถส่งคืนค่าใดๆ ก็ได้ ซึ่งอาจมีผลข้างเคียง
- การเรียงลำดับ - สูตรนี้จะระบุค่าสำหรับการเรียงลำดับระเบียน
- ด้วย - สูตรสามารถส่งคืนค่าใดๆ ก็ได้ ซึ่งอาจมีผลข้างเคียง
ภายในสูตรเหล่านี้ คุณสามารถอ้างถึงฟิลด์ของเรกคอร์ดที่กำลังประมวลผลอยู่ได้ แต่ละฟังก์ชันเหล่านี้สร้าง "ขอบเขตเรกคอร์ด" ที่สูตรคำนวณได้ ซึ่งฟิลด์ของเรกคอร์ดเป็นตัวระบุระดับสูงที่สุด คุณยังสามารถอ้างอิงคุณสมบัติการควบคุมและค่าอื่นๆ จากภายในแอปของคุณได้เช่นกัน
ตัวอย่างเช่น ใช้ตารางของ ผลิตภัณฑ์ วางไว้ในตัวแปรส่วนกลาง
Set( Products,
Table(
{ Product: "Widget", 'Quantity Requested': 6, 'Quantity Available': 3 },
{ Product: "Gadget", 'Quantity Requested': 10, 'Quantity Available': 20 },
{ Product: "Gizmo", 'Quantity Requested': 4, 'Quantity Available': 11 },
{ Product: "Apparatus", 'Quantity Requested': 7, 'Quantity Available': 6 }
)
)
เมื่อต้องการหาว่าผลิตภัณฑ์ไหนมีคำขอเกินกว่าที่มีหรือไม่:
Filter( Products, 'Quantity Requested' > 'Quantity Available' )
อาร์กิวเมนต์แรกของ Filter คือตารางของเรกคอร์ดที่ดำเนินการ และอาร์กิวเมนต์ที่สองคือสูตร ตัวกรอง สร้างขอบเขตของระเบียนสำหรับการประเมินสูตรนี้ โดยที่ฟิลด์ของแต่ละระเบียนจะพร้อมใช้งาน ในกรณีนี้คือ ผลิตภัณฑ์, ปริมาณที่ร้องขอ และ ปริมาณที่มีอยู่ ผลลัพธ์ของการเปรียบเทียบกำหนดว่าแต่ละเรกคอร์ดควรถูกรวมไว้ในผลลัพธ์ของฟังก์ชันหรือไม่:
เพิ่มเติมจากตัวอย่างนี้ เราสามารถคำนวณจำนวนของผลิตภัณฑ์ที่จะสั่งซื้อได้:
AddColumns(
Filter( Products, 'Quantity Requested' > 'Quantity Available' ),
"Quantity To Order", 'Quantity Requested' - 'Quantity Available'
)
ต่อไปนี้ เราจะเพิ่มคอลัมน์จากการคำนวณไปยังผลลัพธ์ AddColumns มีขอบเขตการบันทึกของตัวเองซึ่งใช้ในการคำนวณความแตกต่างระหว่างสิ่งที่ร้องขอและสิ่งที่มีอยู่
สุดท้ายนี้ เราสามารถลดตารางผลลัพธ์ให้เหลือเพียงคอลัมน์ที่เราต้องการได้:
ShowColumns(
AddColumns(
Filter( Products, 'Quantity Requested' > 'Quantity Available' ),
"Quantity To Order", 'Quantity Requested' - 'Quantity Available'
),
"Product",
"Quantity To Order"
)
สังเกตว่าในตัวอย่างข้างต้น เราใช้เครื่องหมายอัญประกาศ (") ในบางจุด และอัญประกาศเดี่ยว (') ในบางจุด เราต้องใช้เครื่องหมายอัญประกาศเดี่ยวเมื่ออ้างถึงค่าของวัตถุ เช่น เป็นฟิลด์หรือตาราง ซึ่งชื่อของวัตถุมีช่องว่าง เราใช้เครื่องหมายอัญประกาศเมื่อเราไม่อ้างถึงค่าของวัตถุแต่เพียงแค่กล่าวถึง โดยเฉพาะในสถานการณ์ที่วัตถุยังไม่มีอยู่จริง เช่นในกรณีของ AddColumns
การแก้ไขความคลุมเครือ
ชื่อฟิลด์ที่เพิ่มด้วยขอบเขตของเรกคอร์ดจะแทนที่ชื่อเดียวกันจากที่อื่นในแอป เมื่อเกิดสิ่งนี้ขึ้น คุณยังสามารถเข้าถึงค่าจากภายนอกขอบเขตเรกคอร์ดได้ด้วยตัวดำเนินการ @ การแก้ไขความคลุมเครือ ได้:
- เมื่อต้องการเข้าถึงค่าจากขอบเขตของเรกคอร์ดที่ซ้อนกัน ให้ใช้ตัวดำเนินการ @ ที่มีชื่อของตารางที่กำลังดำเนินการโดยใช้รูปแบบนี้
ตาราง[@ชื่อฟิลด์] - เมื่อต้องการเข้าถึงค่าส่วนกลาง เช่น แหล่งข้อมูล คอลเลกชัน และตัวแปรบริบท ให้ใช้รูปแบบ [@ObjectName] (โดยไม่ต้องกำหนดตาราง)
ถ้าตารางที่กำลังถูกดำเนินการเป็นนิพจน์ เช่น Filter(Table, ... ) จะไม่สามารถใช้ตัวดำเนินการการแก้ไขความคลุมเครือได้ เฉพาะขอบเขตเรกคอร์ดด้านในสุดเท่านั้นที่สามารถเข้าถึงฟิลด์จากนิพจน์ตารางนี้ได้ โดยไม่ใช้ตัวดำเนินการการแก้ไขความคลุมเครือ
ตัวอย่างเช่น ลองนึกว่าคุณมีคอลเลกชัน X:
คุณสามารถสร้างคอลเลกชันนี้ได้ด้วย ClearCollect( X, [1, 2] )
และคอลเลกชัน Y:
คุณสามารถสร้างคอลเลกชันนี้ได้ด้วย ClearCollect( Y, ["A", "B"] )
นอกจากนี้ กำหนดตัวแปรบริบทที่ชื่อว่า ค่า ด้วยสูตรนี้: UpdateContext( {Value: "!"} )
มารวมข้อมูลเข้าด้วยกัน ในบริบทนี้ สูตรต่อไปนี้:
Ungroup(
ForAll( X,
ForAll( Y,
Y[@Value] & Text( X[@Value] ) & [@Value]
)
),
"Value"
)
สร้างตารางนี้:
เกิดอะไรขึ้นที่นี่ ฟังก์ชัน ForAll ด้านนอกสุดกำหนดขอบเขตเรกคอร์ดสำหรับ X ซึ่งทำให้สามารถเข้าถึงฟิลด์ ค่า ของแต่ละเรกคอร์ดขณะที่ประมวลผล ซึ่งสามารถเข้าถึงได้เพียงการใช้คำว่า ค่า หรือโดยใช้ X[@Value]
ฟังก์ชั่น ForAll ด้านในสุดกำหนดขอบเขตเรกคอร์ดอีกอันหนึ่งสำหรับ Y เนื่องจากตารางนี้ยังมีฟิลด์ ค่า ที่ถูกกำหนด ในการใช้ ค่า ที่นี่หมายถึงฟิลด์ในเรกคอร์ด Y ไม่ได้หมายถึง X อีกต่อไป ตรงนี้เพื่อเข้าถึง ค่า ของ X เราจะต้องใช้เวอร์ชันที่ยาวขึ้น กับตัวดำเนินการการแก้ไขความคลุมเครือ
เนื่องจาก Y คือขอบเขตเรกคอร์ดด้านในสุด การเข้าถึงฟิลด์ของตารางนี้จึงไม่ต้องใช้การขยายความ ทำให้เราใช้สูตรนี้เพื่อให้ได้ผลลัพธ์เดียวกัน:
Ungroup(
ForAll( X,
ForAll( Y,
Value & Text( X[@Value] ) & [@Value]
)
),
"Value"
)
ขอบเขตเรกคอร์ด ForAll ทั้งหมดจะแทนที่ขอบเขตส่วนกลาง ตัวแปรบริบท ค่า ที่เรากำหนดจะไม่พร้อมให้ใช้งานด้วยชื่อ หากไม่ใช้ตัวดำเนินการการแก้ไขความคลุมเครือ ในการเข้าถึงค่านี้ใช้ [@Value]
การยกเลิกการจัดกลุ่ม จะทำให้ผลลัพธ์เป็นแบบแบน เนื่องจากฟังก์ชัน ForAll แบบซ้อนกันจะส่งผลให้มีตารางผลลัพธ์แบบซ้อนกัน
ตารางแบบคอลัมน์เดียว
ในการใช้งานคอลัมน์เดียวจากตารางให้ใช้ฟังก์ชั่น ShowColumns ดังในตัวอย่างนี้:
ShowColumns( Products, "Product" )
สูตรนี้สร้างตารางคอลัมน์เดียวนี้:
สำหรับทางเลือกที่สั้นกว่า ระบุ Table.Column ซึ่งแยกตารางคอลัมน์เดียวของแค่ Column จาก Table ตัวอย่างเช่น สูตรนี้ให้ผลลัพธ์เหมือนกับการใช้ ShowColumns
Products.Product
เรกคอร์ดแบบในบรรทัด
คุณแสดงถึงเรกคอร์ดโดยใช้วงเล็บปีกกาที่มีค่าฟิลด์ที่มีชื่อ ตัวอย่างเช่น คุณสามารถแสดงเรกคอร์ดแรกในตารางตอนแรกของหัวข้อนี้ได้โดยใช้สูตรนี้:
{ Name: "Chocolate", Price: 3.95, 'Quantity on Hand': 12, 'Quantity on Order': 10 }
คุณยังสามารถฝังสูตรลงในสูตรอื่นได้ ดังที่ตัวอย่างนี้แสดง:
{ Name: First(Products).Name, Price: First(Products).Price * 1.095 }
คุณสามารถซ้อนเรกคอร์ดโดยซ้อนวงเล็บปีกกา ดังที่ตัวอย่างนี้แสดง:
{ 'Quantity': { 'OnHand': ThisItem.QuantOnHand, 'OnOrder': ThisItem.QuantOnOrder } }
ล้อมรอบแต่ละชื่อคอลัมน์ที่มีอักขระพิเศษ เช่น ช่องว่างหรือทวิภาค ด้วยเครื่องหมายอัญประกาศเดี่ยว เมื่อต้องการใช้เครื่องหมายอัญประกาศเดี่ยวภายในชื่อคอลัมน์ ให้พิมพ์สองครั้ง
สังเกตว่าค่าในคอลัมน์ ราคา ไม่มีสัญลักษณ์ค่าเงิน เช่น เครื่องหมายดอลลาร์ การจัดรูปแบบดังกล่าวจะถูกนำมาใช้เมื่อแสดงค่า
ตารางแบบในบรรทัด
คุณสามารถสร้างตารางได้โดยใช้ฟังก์ชัน Table และชุดของเรกคอร์ด คุณสามารถแสดงตารางแรกในตอนแรกของหัวข้อนี้ได้โดยใช้สูตรนี้:
Table(
{ Name: "Chocolate", Price: 3.95, 'Quantity on Hand': 12, 'Quantity on Order': 10 },
{ Name: "Bread", Price: 4.95, 'Quantity on Hand': 34, 'Quantity on Order': 0 },
{ Name: "Water", Price: 4.95, 'Quantity on Hand': 10, 'Quantity on Order': 0 }
)
คุณยังสามารถซ้อนตารางได้:
Table(
{ Name: "Chocolate",
'Quantity History': Table( { Quarter: "Q1", OnHand: 10, OnOrder: 10 },
{ Quarter: "Q2", OnHand: 18, OnOrder: 0 } )
}
)
ตารางแบบค่าในบรรทัด
คุณสามารถสร้างตารางแบบคอลัมน์เดียวได้โดยระบุค่าในวงเล็บเหลี่ยม ตารางผลลัพธ์มีคอลัมน์เดียว ที่ชื่อว่า ค่า
ตัวอย่างเช่น [ 1, 2, 3, 4 ]
เทียบเท่ากับ Table( { Value: 1 }, { Value: 2 }, { Value: 3 }, { Value: 4 } )
และคืนค่าเป็นตารางนี้: