XQuery学习笔记
什么是XQuery?
XQuery是一种用于XML文档查询和转换的编程语言。它的目标是提供比XPath更强大和灵活的查询功能,并具有基于XPath的语法。
基础语法
查询元素
在XQuery中,使用 element
关键字查询一个元素,语法如下:
xqueryCopy Codeelement elementName {
// 查询条件
}
例如,查询所有名称为 "book" 的元素:
xqueryCopy Codeelement book {
// 查询条件
}
查询属性
在XQuery中,使用attribute
关键字查询一个属性,语法如下:
xqueryCopy Codeattribute attributeName {
// 查询条件
}
例如,查询所有名称为 "price" 的属性:
xqueryCopy Codeattribute price {
// 查询条件
}
过滤条件
在XQuery中,使用 where
关键字添加过滤条件,语法如下:
xqueryCopy Codefor $variable in collection
where condition
return $variable
例如,查询所有价格小于 50 的书籍:
xqueryCopy Codefor $book in collection
where $book/price < 50
return $book
实例
以下是一个简单的例子,演示如何使用XQuery查询一个包含图书信息的XML文档。
xmlCopy Code<books>
<book>
<title>Java编程思想</title>
<author>Bruce Eckel</author>
<year>2003</year>
<price>59.99</price>
</book>
<book>
<title>Java核心技术</title>
<author>Cay Horstmann, Gary Cornell</author>
<year>2006</year>
<price>69.99</price>
</book>
<book>
<title>Python编程快速上手</title>
<author>Bill Lubanovic</author>
<year>2015</year>
<price>39.95</price>
</book>
</books>
查询所有书籍
xqueryCopy Codefor $book in collection("books.xml")/books/book
return $book
查询所有价格小于50的书籍
xqueryCopy Codefor $book in collection("books.xml")/books/book
where $book/price < 50
return $book
以上就是XQuery的基础语法和一个简单的实例。希望能帮助你更好地理解XQuery。