SELECT FOR XML, How to use?

This statement is below:

SELECT
    ....
FROM
    ....
WHERE
    ....
FOR XML PATH('Booking'), ROOT('doc')

This returns all records in a single line of XML. I want each entry to have its own XML string. Does this make sense? Is it possible. Does it make sense to do this?

I am using Microsoft SQL Server 2008

+3
source share
1 answer

, , XML- ( , " XML" ). FOR XML. , CROSS APPLY FOR XML TYPE. . . master..spt_values:

select t.*
 from master..spt_values s
 cross apply (
 select s.* 
 from (values (1) ) as t(c) 
 for xml path('Boookin'), root('Doc'), type) as t(x)

XML- :

<Doc>
  <Boookin>
    <name>rpc</name>
    <number>1</number>
    <type>A  </type>
    <status>0</status>
  </Boookin>
</Doc>

master..spt_values ​​ .

+1

Source: https://habr.com/ru/post/1760020/


All Articles