นิพจน์XQuery FLWOR
FLWOR คืออะไร?
FLWOR (ออกเสียงว่า "ดอกไม้") เป็นตัวย่อสำหรับ "For, Let, Where, Order by, Return"
- สำหรับ - เลือกลำดับของโหนด
- ให้ - ผูกลำดับกับตัวแปร
- ที่ไหน - กรองโหนด
- เรียงตาม - เรียงลำดับโหนด
- ส่งคืน - สิ่งที่จะส่งคืน (ได้รับการประเมินหนึ่งครั้งสำหรับทุกโหนด)
เอกสารตัวอย่าง XML
เราจะใช้เอกสาร "books.xml" ในตัวอย่างด้านล่าง (ไฟล์ XML เดียวกับในบทที่แล้ว)
ดูไฟล์ "books.xml" ในเบราว์เซอร์ของคุณ
วิธีเลือกโหนดจาก "books.xml" ด้วย FLWOR
ดูนิพจน์เส้นทางต่อไปนี้:
doc("books.xml")/bookstore/book[price>30]/title
นิพจน์ด้านบนจะเลือกองค์ประกอบชื่อทั้งหมดภายใต้องค์ประกอบหนังสือที่อยู่ภายใต้องค์ประกอบร้านหนังสือที่มีองค์ประกอบราคาที่มีค่ามากกว่า 30
นิพจน์ FLWOR ต่อไปนี้จะเลือกเหมือนกับนิพจน์เส้นทางด้านบนทุกประการ:
for $x in doc("books.xml")/bookstore/book
where $x/price>30
return $x/title
ผลลัพธ์จะเป็น:
<title lang="en">XQuery Kick Start</title>
<title lang="en">Learning XML</title>
ด้วย FLWOR คุณสามารถเรียงลำดับผลลัพธ์:
for $x in doc("books.xml")/bookstore/book
where $x/price>30
order by $x/title
return $x/title
ส่วน คำสั่ง สำหรับเลือกองค์ประกอบหนังสือทั้งหมดภายใต้องค์ประกอบร้านหนังสือเป็นตัวแปรที่เรียกว่า $x
ส่วน คำสั่ง whereจะเลือกเฉพาะองค์ประกอบหนังสือที่มีองค์ประกอบราคาที่มีมูลค่ามากกว่า 30
ลำดับตามข้อกำหนดลำดับการเรียงลำดับ จะจัดเรียงตามองค์ประกอบชื่อ
ประโยค ส่งคืน ระบุ สิ่งที่ควรส่งคืน ที่นี่จะส่งกลับองค์ประกอบชื่อ
ผลลัพธ์ของนิพจน์ XQuery ด้านบนจะเป็น:
<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>