我有一张名为 tblAdmissions 的表,该表中的一列名为“ProgramInformation”。此列包含 xml 字符串,例如
<row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" num="1">
<COURSE>reference_project</COURSE>
<FEE>true</FEE>
</row>
<row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" num="2">
<COURSE>RoomID</COURSE>
<FEE>99</FEE>
</row>
我正在使用此查询通过使用交叉应用从这些列中获取值,并且它非常慢。
使用 vDynamic AS ( 选择
xmlProgramInformation = CAST(ProgramInformation AS XML)
FROM
tblAdmission
)
SELECT
t.p.query('COURSE' ).value('.', 'varchar(max)') AS Decipline,
t.p.query('FEE' ).value('.', 'varchar(max)') AS CourseFee
FROM
vDynamic
CROSS apply xmlProgramInformation.nodes('/DOCUMENT/ROWS/row') AS t(p)
有没有其他方法可以让我的查询快速运行。
谢谢