XQuery FLWOR ±í´ïʽ

XML ʵÀýÎĵµ

ÎÒÃǽ«ÔÚÏÂÃæµÄÀý×ÓÖмÌÐøÊ¹ÓÃÕâ¸ö "books.xml" Îĵµ£¨ÓëÉÏÒ»½ÚÖÐµÄ XML ÎļþÏàͬ£©¡£

ÔÚÄúµÄä¯ÀÀÆ÷Öв鿴 "books.xml" Îļþ¡£

Èç¹ûʹÓà FLWOR ´Ó "books.xml" ѡȡ½Úµã

Çë¿´ÏÂÃæÕâ¸ö·¾¶±í´ïʽ£º

doc("books.xml")/bookstore/book[price>30]/title

ÉÏÃæÕâ¸ö±í´ïʽ¿Éѡȡ bookstore ÔªËØÏ嵀 book ÔªËØÏÂËùÓÐµÄ title ÔªËØ£¬²¢ÇÒÆäÖÐµÄ price ÔªËØµÄÖµ±ØÐë´óÓÚ 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

FLWOR ÊÇ "For, Let, Where, Order by, Return" µÄֻȡÊ××ÖĸËõд¡£

for Óï¾ä°Ñ bookstore ÔªËØÏµÄËùÓÐ book ÔªËØÌáÈ¡µ½ÃûΪ $x µÄ±äÁ¿ÖС£

where Óï¾äѡȡÁË price ÔªËØÖµ´óÓÚ 30 µÄ book ÔªËØ¡£

order by Óï¾ä¶¨ÒåÁËÅÅÐò´ÎÐò¡£½«¸ù¾Ý title ÔªËØ½øÐÐÅÅÐò¡£

return Óï¾ä¹æ¶¨·µ»ØÊ²Ã´ÄÚÈÝ¡£ÔÚ´Ë·µ»ØµÄÊÇ title ÔªËØ¡£

ÉÏÃæµÄ XQuery ±í´ïʽµÄ½á¹û£º

<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>
VUE