Use el nuevo FOR XML PATH
sintaxis:
SELECT TOP 1
'someValue' AS '@Attribute',
'text' as 'z/NodeA'
FROM dbo.Test
WHERE....
FOR XML PATH('YourElement'), ROOT('Root')
Esto daría algo como
<Root>
<YourElement Attribute="someValue">
<z>
<NodeA>text</NodeA>
</z>
</YourElement>
</Root>
Lea más sobre esto aquí:
- Ejemplo simple de crear un archivo XML usando T-SQL
- Uso de serialización XML con FOR XML PATH de SQL