我正在使用SQL Server 2008,我正在尝试使用EXPLICIT模式生成自定义xml FOR XML.
我有以下查询的一对多关系
select
p.personid, p.firstname, a.P_City
from
tblPeople p with (nolock)
left outer join
tblAddresses a with (nolock) on p.personid = a.personid
where
p.personid = 120773
Run Code Online (Sandbox Code Playgroud)

我希望人作为父母和地址作为孩子可能是多个因为人们要解决有一对多的关系.
我写了以下查询
select 1 as TAG,
null as parent,
p.personid as [person!1!personid],
p.FirstName as [person!1!firstname],
null as [addr!2!]
from tblPeople p with (nolock) where p.PersonID in (120773,117396)
union all
select 2,1,
p.PersonID, p.FirstName, a.P_City from tblAddresses a with(nolock), tblPeople p
where p.PersonID=a.PersonID and p.PersonID in (120773,117396)
for …Run Code Online (Sandbox Code Playgroud)