Vin*_*mir 4 sql-server xquery nodes
我有两个 xml 变量:
@main xml = '<root></root>'
@insert xml = '<rows><row>SomeRow</row></rows>'
Run Code Online (Sandbox Code Playgroud)
我想插入@insert 行的子节点,以便得到如下所示的结果 XML:
<root>
<row>SomeRow</row>
</root>
Run Code Online (Sandbox Code Playgroud)
我很清楚从 sql 变量插入 xml(使用 sql:variable("@insert")),但这会插入整个 XML,包括根元素。我想要的是只在@insert 变量中插入根元素的子节点。
谢谢一堆。
一种方法是更改您需要插入另一个 xml 的变量中的数据:
DECLARE @main xml = '<root></root>',
@insert xml = '<rows><row>SomeRow</row></rows>'
SELECT @insert = @insert.query('/rows/row')
SET @main.modify('
insert sql:variable("@insert")
into (/root)[1] ')
SELECT @main
Run Code Online (Sandbox Code Playgroud)
输出:
<root>
<row>SomeRow</row>
</root>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5015 次 |
| 最近记录: |