DB2如何替换XML元素返回的双引号

时间:2014-09-06 01:31:17

标签: db2 xquery-sql

我能够使用以下SQL

成功检索XML元素的值
*SELECT XMLQUERY('$item/*:ItemSpec/*:AdditionalDescription/*:ABCDescription/text()' PASSING productval.value_xml as "item") AS H_DESCRIPTION FROM USER1.XMETA*

这将返回一个双引号(")的值。如何在同一个选择查询中将其替换为不同的值。我尝试过类似的东西,但它没有工作

Select REPLACE(XMLQUERY('$item/*:ItemSpec/*:AdditionalDescription/*:ABCDescription/text()' PASSING productval.value_xml as "item"),'"','QUOT') AS H_DESCRIPTION

错误是没有授权的例程" REPLACE"类型"功能"找到了兼容的参数... SQLCODE = -440,SQLSTATE == - 42884。

1 个答案:

答案 0 :(得分:0)

XMLQUERY返回XML类型,尝试将其转换为varchar,然后再对其应用REPLACE:

REPLACE(XMLCAST(XMLQUERY('$item/*:ItemSpec/*:Addition ...) AS VARCHAR(...)), '"','QUOT') AS ..