我有一个包含XML的CLOB,该XML包含详细信息表中每行的信息。我想从适用于当前详细信息行的XML中提取节点文本。提取的XPath基本上会说[@Line_ID=X]
,其中X是当前行的LINE_ID
值。目前,我只能看到如何在extract命令中对XPath进行硬编码。下面的SQL Fiddle显示了问题,而硬编码的XPath为第二行+返回了错误的行。
SQL小提琴showing incorrect Oracle结果。
我需要针对Oracle和SQL Server的此解决方案,并且我能够使用sql:column
XPath function在SQL Server中找出解决方案。这个SQL Fiddle shows the correct results on a SQL Server数据库。
是否存在Oracle等效的SQL Server sql:column
函数?
答案 0 :(得分:0)
我过度思考这个问题。 Oracle允许您在XPath中使用字符串连接。 XPath最终看起来像[@Line_ID="' || DtlAlias.Line_ID || '"]
显示正确结果的更新Fiddle。