【发布时间】:2019-09-02 16:51:13
【问题描述】:
名为 xmlString 的列包含存储为字符串的 XML。我需要检查,对于该列的每个值,它是否包含包裹在一堆 周围的 tag1 的某个值标签2-s。 tag2-s 由键值对组成(基本上每个都保存一个字典项)。我需要在具有特定值的 tag1 中添加一个新的 tag2 包含一个新的键值对。
例如,我有这个:
<tag1 name=\"test_name\">
<tag2 key=\"test_key\" value=\"test_value\" />
</tag1>
作为我 XML 的一部分,我想在 tag1 中添加一个新的 tag2包含 name=\"test_name\",如果可能的话,甚至只包含 "test_name\"。
期望的结果如下所示:
<tag1 name=\"test_name\">
<tag2 key=\"test_key\" value=\"test_value\" />
<tag2 key=\"new_key\" value=\"new_value\" />
</tag1>
我需要使用 SQL 执行此操作,并且基本上使用新的 tag2 更新每一行(如果它包含)
<tag1 name =\"test_name\">
【问题讨论】:
-
您需要指定您的数据库是什么。每个数据库供应商支持的 SQL 变体略有不同。
-
它是 Microsoft SQL Server 17。