我有一个 Oracle 过程将在一个参数中接受多个值。该过程的一部分将运行一个 select 语句,将参数的结果放在 where 子句中,并将连接的 CLOB 放入一个变量中。我目前在程序中使用下面的查询,但是当我运行它时,我得到下面的错误。
If CLOB_ID is not null then
SELECT cast((collect(CLOB_TEXT) )as CLOB )
into v_MessageBody
FROM MESSAGE_CLOB_TABLE
WHERE MESSAGE_ID in CLOB_ID;
End If;
错误:ORA-00932:不一致的数据类型:预期 - 得到 CLOB
我也尝试使用 LISTAGG 函数编写此代码,但 LISTAGG 不适用于 MESSAGE_CLOB_TABLE 中的 CLOB 值
任何帮助将不胜感激!我正在使用 Oracle 11g。