0
我在所有包含如下所示使用XQuery
<ModuleData ModuleFieldGU="4dcdde21-40c6-4d1a-9fe1-1841935d3a68">
<DateTime>0001-01-01T00:00:00</DateTime>
<Boolean>false</Boolean>
<Int>0</Int>
<Varchar>Test District</Varchar>
<GUID>00000000-0000-0000-0000-000000000000</GUID>
<Modified>true</Modified>
</ModuleData>
我需要在所有的這些搭配在哪裏看的元素數據庫中的一堆行的XML匹配的值到現場varchar元素/節點被設置爲某個值。
我都試過了followuing的,既不似乎是爲我工作
SELECT
Data.Element.value('(@Varchar)[1]', 'varchar(255)') as UserEmail
FROM
ModuleData
CROSS APPLY
XML_DATA.nodes('/ModuleData') AS Data(Element)
WHERE
Data.Element.value('(@Varchar)[1]', 'varchar(255)') = @UserEmail
和
SELECT
CAST(XML_DATA.query('data(/ModuleData[@Varchar])') as varchar(255)) as UserEmail
FROM
ModuleData
WHERE
XML_DATA.exist('/ModuleData[@Varchar = sql:variable("@UserEmail")]') = 1
,但它無法正常工作。我沒有真正瞭解使用XQuery從XML中獲取數據的細節。任何人都可以指出我正確的方向嗎?