sql查询xml
‘壹’ 怎么能用sql语句把查询结果转换给定格式的XML文件
.net的话可以将查询结果放到DataTable或者DataSet,可以直接调用WriteXML方法导出成XML文件。
‘贰’ sql 2005数据库 如何操作xml
查询操作
在定义了一个XML类型的数据之后,我们最常用的就是查询操作,下面我们来介绍如何使用SQL语句来进行查询操作的。
在T-Sql中,提供了两个对XML类型数据进行查询的函数,分别是query(xquery)和value(xquery,
dataType),其中,query(xquery)得到的是带有标签的数据,而value(xquery,
dataType)得到的则是标签的内容。接下类我们分别使用这两个函数来进行查询。
1
、使用query(xquery)
查询
我们需要得到书的标题(title),使用query(xquery)来进行查询,查询语句为:
select
@xmlDoc.query('/book/title')
2
、使用value(xquery,
dataType)
查询
同样是得到书的标题,使用value函数,需要指明两个参数,一个为xquery,
另一个为得到数据的类型。看下面的查询语句:
select
@xmlDoc.value('(/book/title)[1]',
'nvarchar(max)')
3
、查询属性值
无论是使用query还是value,都可以很容易的得到一个节点的某个属性值,例如,我们很希望得到book节点的id,我们这里使用value方法进行查询,语句为:
select
@xmlDoc.value('(/book/@id)[1]',
'nvarchar(max)')
4
、使用xpath进行查询
xpath是统一的Xml查询语句。使用XPath可以方便的得到想要的节点,而不用使用where语句。例如,我们在@xmlDoc中添加了另外一个节点
例如
:得到id为0002的book节点
select
@xmlDoc.query('(/root/book[@id="0002"])')
参考资料:SQL如何操作Xml字段
http://www.studyofnet.com/news/490.html
‘叁’ 数据库 SQL 有XML字段,怎样用nodes,values,查询
SELECT T.c.value('DocEntry[1]','int'),
T.c.value('LineNum[1]','int'),
T.c.value('ItemCode[1]','varchar(50)')
FROM @x.nodes('NewDataSet/RDR1') AS T(c)
是不是你要的结果