【发布时间】:2019-10-23 10:51:09
【问题描述】:
如何像这样解析XML有序列表
<ol>
<li>value1</li>
<li>value2</li>
<li>value3</li>
</ol>
像这样进入表格(就像在 html 中可见一样):
Nr Value
----------- ------
1 value1
2 value2
3 value3
下面是 XML 字符串的代码:
declare @ol XML= '<ol><li>'+REPLACE('value1,value2,value3', ',', '</li><li>')+'</li></ol>'
select @ol
注意!是否可以从 XML 解析“编号”而不创建类似 identity 列的内容?
小更新: 以下解决方案为上述简单示例提供了正确答案:
但是是否有可能为这个更棘手的例子找到解决方案:
DECLARE @ol XML
SET @ol=
'<ol type="i" start="3">
<li>value1</li>
<li>value2</li>
<li>value3</li>
</ol>';
估计结果:
Nr Value
---- -------
iii value1
iv value2
v value3
?
【问题讨论】:
-
到目前为止您尝试过什么?你看过
XQUERY吗?有很多关于如何在 SQL Server 中读取xml数据类型的示例;您不理解哪些答案,因此我们可以向您解释。谢谢, -
订单是否重要,例如是否可以在结果中使用
1, value3而不是1, value1? -
@SalmanA 是的,这很重要
-
@Denis...我已经编辑了我的答案,您可以查看...
标签: sql sql-server xml