【发布时间】:2017-03-10 14:28:55
【问题描述】:
有没有办法在 sql 中强制结束 xml daugther 节点?我需要结束并重新打开一个特定的节点。我的代码目前看起来像:
USE [DBNAME]
Select (Select
'EK' as 'prices/price/group',
XUVP as 'prices/price/price',
'1' as 'prices/price/from',
'beliebig' as 'prices/price/to',
'FH' as 'prices/price/group',
XHEK as 'prices/price/price',
'1' as 'prices/price/from',
'beliebig' as 'prices/price/to',
'D' as 'prices/price/group',
XDEK as 'prices/price/price',
'1' as 'prices/price/from',
'beliebig' as 'prices/price/to',
'P' as 'prices/price/group',
XPEK as 'prices/price/price',
'1' as 'prices/price/from',
'beliebig' as 'prices/price/to'
FOR XML Path('article'),Type,Elements)
FROM [dbo].[TABLENAME] FOR XML PATH ('articles'), Elements, ROOT('Root')
GO
导致:
<prices>
<price>
<group>EK</group>
<price>459.000</price>
<from>1</from>
<to>beliebig</to>
----> </price>
----> <price>
<group>FH</group>
<price>279.000</price>
<from>1</from>
<to>beliebig</to>
</price>
</prices>
我需要在四个子注释之后“强制结束”每个价格层(第二层),并为四个节点的下一个开始一个新的价格层。缺少的结束和开始标签被添加并标记在上面发布的结果中。
此外,我想为任何语法错误道歉,但我不是本地人。即使这个问题对于习惯 sql 的人来说可能是一件容易的事情,但我真的很感谢您能帮上忙。
在此先感谢并致以最良好的祝愿
音
【问题讨论】: