SQL SERVER中XML查询:FOR XML指定RAW

SQL SERVER中XML查询:FOR XML指定RAW


前言

在SQL SERVER中,XML查询可以指定RAW,AUTO,EXPLICIT,PATH。本文用一些实例介绍SQL SERVER中指定RAW的XML查询。


基础FOR XML查询


看实例:

with TestXml
as
(
    select 1 as id,'LeeWhoeeUniversity' as name
    union all
    select 2,'SQLSERVER中XML查询'
    union all
    select 3 ,'FOR XML'
)
select id,name from testxml for xml raw,type

运行后结果:

<row id="1" name="LeeWhoeeUniversity" />
<row id="2" name="SQLSERVER中XML查询" />
<row id="3" name="FOR XML" />

红色字体type可选,不会影响结果,只是影响数据类型。


指定 ELEMENTS


with TestXml
as
(
    select 1 as id,N'LeeWhoeeUniversity' as name
    union all
    select 2,N'SQLSERVER中XML查询'
    union all
    select 3 ,null
)
select id,name from testxml for xml raw,
elements

注意,第三行值改为NULL值进行测试。

结果:

<row>
  <id>1</id>
  <name>LeeWhoeeUniversity</name>
</row>
<row>
  <id>2</id>
  <name>SQLSERVER中XML查询</name>
</row>
<row>
  <id>3</id>
</row>

元素name在第三行没有出现,因为是NULL值。

但是我们可以用XSINIL生成NULL值的name元素。

如:

with TestXml
as
(
    select 1 as id,N'LeeWhoeeUniversity' as name
    union all
    select 2,N'SQLSERVER中XML查询'
    union all
    select 3 ,null
)
select id,name from testxml for xml raw,elements
XSINIL 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值