sql >> Base de Datos >  >> RDS >> Sqlserver

Consulta SQL Server Xml con múltiples espacios de nombres

Sé que se acepta la respuesta, pero en realidad hay una forma más sencilla de hacerlo, si lo único que debe hacer es seleccionar el valor del nodo. Solo usa * como nombre de espacio de nombres:

SELECT MessageXml
     ,  MessageXml.value('(/*:Envelope/*:Body/*:FetchRequest/*:Contract/*:TransactionId)[1]'
                       , 'varchar(max)')
FROM   dbo.Message