双关语/博达/OSINA/IGDEB LEESA
RUGMU/IGDEB LEESA
在SQL Server中使用OPENXML,我试图生成如下所示的平面表示。
我在这里创建了一个简单的例子来再现我的挑战。
尝试使用XQuery方法代替OPENXML
,例如:
declare @XML XML =
N'<HID Name="LEESA5" CodeName="YBAS" Sequences="12,30">
<Direct Sequence="12">PUNED/BODAS/OSINA/IGDEB/LEESA</Direct>
<Direct Sequence="30">RUGMU/IGDEB/LEESA</Direct>
</HID>';
select
hid.value(N'@Name', N'varchar(10)') as [Name],
hid.value(N'@CodeName', N'varchar(10)') as [CodeName],
hid.value(N'@Sequences', N'varchar(10)') as [Sequences],
direct.value(N'@Sequence', N'varchar(10)') as [Sequence],
direct.value(N'(text())[1]', N'varchar(100)') as [Direct]
from @XML.nodes(N'/HID') x(hid)
cross apply hid.nodes(N'Direct') y(direct);
生产:
<表类>名称 代号 序列序列直接 tbody><<tr>LEESA5 这家 12日30 12 双关语/博达/OSINA/IGDEB LEESA LEESA5 这家 12日30 30 RUGMU/IGDEB LEESA 表类>