尝试
XMLAGG像这样使用:
select p.PeopleID, rtrim(xmlagg(xmlelement(e, s.SiteName, ',')).extract('//text()').getclobval(), ',')from people pjoin site s on p.SiteID = s.SiteIDgroup by p.PeopleID;如果您需要按特定顺序进行连接,例如按SiteId的升序排列,则
order by在xmlagg中添加一个子句:
select p.PeopleID, rtrim(xmlagg(xmlelement(e, s.SiteName, ',') order by s.SiteId).extract('//text()').getclobval(), ',')from people pjoin site s on p.SiteID = s.SiteIDgroup by p.PeopleID;编辑:
如果要显示分配给站点100的所有人员的结果,请执行以下操作:
select p.PeopleID, rtrim(xmlagg( xmlelement(e, s.SiteName, ',') order by s.SiteId ).extract('//text()').getclobval(), ',')from people pjoin site s on p.SiteID = s.SiteIDjoin ( select distinct PeopleID from people where siteID = 1 ) p2 on p.PeopleID = p2.PeopleIDgroup by p.PeopleID;


