前几天一个小活,基于性能考虑到使用sqlserver2008中用Xquery的方式来解析XML数据,
感觉相当不错。
Declare @XMLData xml
Set @XMLData = '<source>
<student ID="001" name="张三">
<语文>1</语文>
<数学>2</数学>
<地理>3</地理>
<生物>4</生物>
<物理>5</物理>
<化学>6</化学>
</student>
<student ID="002" name="李四">
<语文>101</语文>
<数学>2</数学>
<地理>3</地理>
<生物>4</生物>
<物理>5</物理>
<化学>6</化学>
</student>
<student ID="003" name="王五">
<语文>102</语文>
<数学>2</数学>
<地理>3</地理>
<生物>4</生物>
<物理>5</物理>
<化学>6</化学>
</student>
<student ID="005" name="黑六">
<语文>103</语文>
<数学>2</数学>
<地理>3</地理>
<生物>4</生物>
<物理>5</物理>
<化学>6</化学>
</student>
</source>'
Select
c.value('../@id','varchar(50)') as '学号',CONVERT( varchar(50),c.query('fn:local-name(.)') ) as '科目',c.query('text()') ) as '成绩'
From @XMLData.nodes('source/*/*') as t(c)
SELECT @XMLData.query('for $s in //source/student/* return <student><Subject key="{local-name($s)}"></Subject></student>')
这样轻松就把一个多维的XML转换为了我们常用的数据表,并且可以轻松的使用它来为我们服务。比起传统的到客户端再解析,简直方便多了
总结以上是内存溢出为你收集整理的Server2008 中 XQuery 小牛试刀全部内容,希望文章能够帮你解决Server2008 中 XQuery 小牛试刀所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)