XML en SQL Server
Uso XML en SQL Server 2008
Instrucciones para realizar consultas y devolverlas en formato XML, o extraer un valor de un XML
| —xml —For XML  Raw , Auto, Explicit, Path –consulta de las tablas customers y orders –1.Ejemplo 1 Select Customers.CustomerID, Customers.CompanyName, Orders.OrderID, Orders.OrderDate from Customers inner join orders on Customers.CustomerID=Orders.customerid for xml raw –2.Ejemplo 2 Select Customers.CustomerID, Customers.CompanyName, Orders.OrderID, Orders.OrderDate from Customers inner join orders on Customers.CustomerID=Orders.customerid for xml auto ———-For XML Explicit –Informacion de customers y orders del customerid=’ALFKI’ Select 1 as Tag,  null as parent, customerid as [Cliente!1!customerid], contactname as [Cliente!1], null as  [Orden!2!orderid], null as [Orden!2] from customers as C where customerid=‘ALFKI’ union Select 2 as Tag, 1 as Parent, C.customerid, C.contactName, o.orderid, o.shipaddress from Customers as C inner join orders as o on C.CustomerID=o.CustomerID  where C.CustomerID=‘ALFKI’ For xml Explicit –resultado xml Anterior <C customerid=«ALFKI»>Maria Anders     <O orderid=«10643»>Obere Str. 57</O>     <O orderid=«10692»>Obere Str. 57</O>     <O orderid=«10702»>Obere Str. 57</O>     <O orderid=«10835»>Obere Str. 57</O>     <O orderid=«10952»>Obere Str. 57</O>     <O orderid=«11011»>Obere Str. 57</O> </C> —uso de for xml path Select Customers.CustomerID, Customers.CompanyName, Orders.OrderID, Orders.OrderDate from Customers inner join orders on Customers.CustomerID=Orders.customerid for xml path (‘venta’) ———–uso de xml.query declare @mydoc xml set @mydoc=‘<root> <productdescription productid=»1″ productname=»rood bike»> <Features> <warranty>1 año de garantia para partes</warranty> <maintenance>3 años de mantenimiento</maintenance> </Features> </productdescription> </root>’ Select @mydoc.query  (‘/root/productdescription/Features/maintenance’) ———–uso de xml.Value declare @bicicleta varchar(100) declare @mydoc xml set @mydoc=‘<root> <productdescription productid=»1″ productname=»rood bike»> <Features> <warranty>1 año de garantia para partes</warranty> <maintenance>3 años de mantenimiento</maintenance> </Features> </productdescription> </root>’ Set @bicicleta= @mydoc.value(  ‘(/root/productdescription/@productname)[1]’, ‘varchar(100)’) Select @bicicleta | 
