更多的反映出一個問題。我創建一個存儲過程,它將xml作爲輸入參數,並在查詢數據時遇到一些問題。存儲過程xml查詢
這是查詢
DECLARE @xVar XML
SET @xVar =
'<?xml version="1.0"?>
<Workflow xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://ait.com/workflow/">
<Users>
<User ObjectId="1232">
<UserId>123</UserId>
</User>
<User ObjectId="1232">
<UserId>124</UserId>
</User>
</Users>
</Workflow>';
WITH XMLNAMESPACES(DEFAULT 'http://ait.com/workflow/')
SELECT [UserId] = reportdata.item.value('UserId[1]', 'varchar(36)')
FROM @xVar.nodes('//Workflow/Users/User') AS reportdata(item)
這只是返回的用戶ID的XML文檔中的一個。如果我走在SELECT語句
FROM @xVar.nodes('//Workflow/Users/User') AS reportdata(item)
它的工作原理和似乎是合乎邏輯的最後一部分仔細看,從根開始,並指定路徑,有什麼奇怪,我的是,這也適用
FROM @xVar.nodes('//Users/User') AS reportdata(item)
,甚至陌生人,這個工作
FROM @xVar.nodes('//User') AS reportdata(item)
可能錯過了一些頁面的XML書傻瓜,可能有人賜教請
感謝:
試試這個:
結果。像你的答案教學,徹底和尊重。幹得好 – klashagelqvist
不客氣。 –