从服务代理消息获取数据时,OPENXML 或 XML.NODES 哪个更快?

问题描述 投票:0回答:1

当我从 SSMS 运行此程序时,XML.Nodes 的运行时间减少了,但查看实际计划,我可以看到 OPENXML 的 sql 费用减少了。速度是一个要求,如果我能节省几毫秒,我就会采用该解决方案。

这是我的计划:https://www.brentozar.com/pastetheplan/?id=SkmMHDREC

sql-server xml query-optimization openxml sqlxml
1个回答
1
投票

CPU 和等待统计信息位于实际执行计划 XML 中。

插入

#documentopenxml ... FROM OPENXML (@hndl,N'documentxml//',1)

            <WaitStats>
              <Wait WaitType="OLEDB" WaitTimeMs="14" WaitCount="1002" />
            </WaitStats>
            <QueryTimeStats CpuTime="104" ElapsedTime="104" />

插入

#document ... @message.nodes('//SyncRecord') tbl(col)

            <QueryTimeStats CpuTime="5" ElapsedTime="5" />
© www.soinside.com 2019 - 2024. All rights reserved.