我正在使用 SQL Server 2008 R2 运行查询FOR XML PATH
。我唯一的问题是我希望所有元素都出现,即使它们是 NULL 并且我希望空(或 null)元素返回为
<MyElement />
Not as
<MyElement></MyElement>
您可以在字段列表中的子查询中查询该字段,使用for xml
,创建空元素的两个版本。
declare @T table
(
ID int identity primary key,
Name nvarchar(10)
)
insert into @T(Name)
select 'Name 1' union all
select null union all
select 'Name 2'
select ID,
(select Name as '*' for xml path(''), type) as Name,
(select Name as '*' for xml path('Name'), type)
from @T
for xml path('row')
Result:
<row>
<ID>1</ID>
<Name>Name 1</Name>
<Name>Name 1</Name>
</row>
<row>
<ID>2</ID>
<Name></Name>
<Name />
</row>
<row>
<ID>3</ID>
<Name>Name 2</Name>
<Name>Name 2</Name>
</row>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)