У меня есть следующий код для генерации вывода xml.значения в ssms генерируемых тегах xml
select
[FirstName] as 'SubscriberName/FirstName',
[Middle] as 'SubscriberName/MiddleName',
LastName as 'SubscriberName/LastName',
'123 fake street' as 'Address/Address1'
from chp_work_area.dbo.Students1099hc
FOR XML PATH('SubscriberInformation'), ROOT('Test')
Результат этого xml ниже и является точным.
<Test>
<SubscriberInformation>
<SubscriberName>
<FirstName>BOB</FirstName>
<MiddleName>G</MiddleName>
<LastName>CHOI</LastName>
</SubscriberName>
<Address>
<Address1>123 fake street</Address1>
</Address>
</SubscriberInformation>
<SubscriberInformation>
<SubscriberName>
<FirstName>MOLLY</FirstName>
<MiddleName>G</MiddleName>
<LastName>MORTY</LastName>
</SubscriberName>
<Address>
<Address1>123 fake street</Address1>
</Address>
</SubscriberInformation>
</Test>
Последняя часть, что мне нужно для информации абонента списка которых запись он находится внутри тега, так что она выглядит следующим образом.
<Test>
<SubscriberInformation docID="Person001">
<SubscriberName>
<FirstName>BOB</FirstName>
<MiddleName>G</MiddleName>
<LastName>CHOI</LastName>
</SubscriberName>
<Address>
<Address1>123 fake street</Address1>
</Address>
</SubscriberInformation>
<SubscriberInformation docID="Person002">
<SubscriberName>
<FirstName>MOLLY</FirstName>
<MiddleName>G</MiddleName>
<LastName>MORTY</LastName>
</SubscriberName>
<Address>
<Address1>123 fake street</Address1>
</Address>
</SubscriberInformation>
</Test>
использования «@docID» в качестве псевдонима ... вам придется немного поработать с ним. Проверьте, выберите [FirstName] как «@docID», и вы увидите, что я имею в виду. – manderson