Выражения FLWOR в XQuery

Пример XML документа

Мы продолжим использовать этот документ "books.xml" в следующем примере (он же XML файл из предыдущего раздела).

Просмотрите файл "books.xml" в вашем браузере.

Если использовать FLWOR для выбора узлов из "books.xml"

Пожалуйста, посмотрите на следующую выражение для пути:

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

Следующее выражение может выбирать все элементы title из элементов book под элементом bookstore, при этом значение элемента price должно быть больше 30.

Следующий FLWOR выражение选取的数据 и путь expressions выше идентичны:

for $x в 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 в doc("books.xml")/bookstore/book
where $x/price>30
order по $x/title
return $x/title

FLWOR - это аббревиатура от "For, Let, Where, Order by, Return".

for Получение всех элементов book из элемента bookstore и их хранение в переменной $x.

where Указание, что выбираются элементы book с значением price больше 30.

order by Определение порядка сортировки. Сортировка будет производиться по элементам title.

return Указание, что содержимое возвращается. В данном случае возвращается элемент title.

Результат expressions XQuery выше:

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