gpt4 book ai didi

sql-server - 用于 xml 路径的 TSQL - 即使子查询为空,我如何包含子查询容器元素?

转载 作者:行者123 更新时间:2023-12-03 09:52:53 27 4
gpt4 key购买 nike

我构建 XML 的查询包括子查询。子记录应该进入容器元素。即使没有子记录,XML 也必须具有容器元素。

请考虑以下事项。 <Patients>即使没有子记录或验证失败,容器元素也必须存在。

<Hospital>
<Patients>
<Patient></Patient>
<Patient></Patient>
<Patient></Patient>
</Patients>
</Hospital>

我使用 FOR XML PATH 尝试了几种不同的方法:

select
(
select
PatientFields
from
PatientTable
for xml path('Patient'), root('Patients'), elements xsinil, type
)
for xml path('Hospital'), elements xsinil, type

上述方法省略了 <Patients>一个空集的元素。

下面的包含标签但添加了 xsi:nil="true"属性,这也会导致验证失败。

select
(
select
PatientFields
from
PatientTable
for xml path('Patient'), elements xsinil, type
) Patients
for xml path('Hospital'), elements xsinil, type

有没有办法强制容器元素出现?

最佳答案

select
(
select
'John Doe'
where 1 = 0
for xml path('Patient'), type
)
for xml path('Patients'), root('Hospital'), type

关于sql-server - 用于 xml 路径的 TSQL - 即使子查询为空,我如何包含子查询容器元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17457702/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com