SQL Server XML查询
我从大学开始就没有处理过XML文档。我在寻求帮助。我需要在SQLServer中编写一个XML查询,以输出数据 请注意,数据仅从SQL Server中的一个表中提取SQL Server XML查询,sql,sql-server,xml,Sql,Sql Server,Xml,我从大学开始就没有处理过XML文档。我在寻求帮助。我需要在SQLServer中编写一个XML查询,以输出数据 请注意,数据仅从SQL Server中的一个表中提取 <EnrollmentRequest> <Vendor id="string"/> <Members> <Member> -- 1st Member Record <PayerPatientId>string</
<EnrollmentRequest>
<Vendor id="string"/>
<Members>
<Member> -- 1st Member Record
<PayerPatientId>string</PayerPatientId>
<PayerInsuranceId>string</PayerInsuranceId>
<RequestTypeId>6427</RequestTypeId>
<LastName>string</LastName>
<FirstName>string</FirstName>
<Gender>string</Gender>
<DOB>string</DOB>
<Zip>string</Zip>
<Phone>string</Phone>
<SSN>string</SSN>
<City>string</City>
<State>string</State>
<DateOfServiceRange/>
<PatientConsent>string</PatientConsent>
</Member>
<Member> -- 2nd Member Record
<PayerPatientId>string</PayerPatientId>
<PayerInsuranceId>string</PayerInsuranceId>
<RequestTypeId>-2065</RequestTypeId>
<LastName>string</LastName>
<FirstName>string</FirstName>
<Gender>string</Gender>
<DOB>string</DOB>
<Zip>string</Zip>
<Phone>string</Phone>
<SSN>string</SSN>
<City>string</City>
<State>string</State>
<DateOfServiceRange/>
<PatientConsent>string</PatientConsent>
</Member>
</Members>
</EnrollmentRequest>
但是我无法获取“Members”元素块。据我所知,不能有多个根,因此如何才能使“Members”标记像“EnrollmentRequest”标记一样工作,以及如何使供应商id标记在文件中只出现一次?您需要为您的成员信息使用子选择-类似以下内容:
SELECT
'abc' AS 'Vendor/@Id',
(SELECT
m.ID,
m.LastName,
m.FirstName,
m.ZIP,
m.City
FROM
dbo.YourMembersTable m
FOR XML PATH('Member'), TYPE) AS 'Members'
FOR XML PATH(''), ROOT('EnrollmentRequest')
这将枚举所有成员,将每个成员输出到
元素中,然后将其“包装”到
根元素中的
元素中。就是这样做的。我在XML地狱里,谢谢你它成功了@如果这个答案帮助你解决了你的问题,那么请。这将表达你对那些花自己的时间帮助你的人的感激之情。
SELECT
'abc' AS 'Vendor/@Id',
(SELECT
m.ID,
m.LastName,
m.FirstName,
m.ZIP,
m.City
FROM
dbo.YourMembersTable m
FOR XML PATH('Member'), TYPE) AS 'Members'
FOR XML PATH(''), ROOT('EnrollmentRequest')