Select oracle中选择的ORA-19011

Select oracle中选择的ORA-19011,select,oracle11g,Select,Oracle11g,我有一个select语句抛出错误 ORA-19011:字符串缓冲区太小 选择步骤如下所示 SELECT Substr(Rtrim (Xmlagg (Xmlelement (e, Concat(message_text, ' '))).extract ( '//text()'), ' '), 0, 256) message_text,

我有一个select语句抛出错误

ORA-19011:字符串缓冲区太小

选择步骤如下所示

SELECT Substr(Rtrim (Xmlagg (Xmlelement (e, Concat(message_text, ' '))).extract 
                     ( 
                            '//text()'), 
                            ' '), 0, 256) message_text, 
       mobile_number, 
       tran_date, 
       parent_tran_acct_no 
FROM   custom.mobee_push_sms_drc 
WHERE  bank_id = '43' 
       AND status = 'A' 
       AND mobile_number <> '243' 
       AND mobile_number LIKE '243%' 
GROUP  BY mobile_number, 
          tran_date, 
          parent_tran_acct_no 
选择Substr(Rtrim(Xmlagg(xmlement)(e,Concat(message_text.)))。提取
( 
“//text()”),
''),0,256)消息文本,
手机号码,
tran_date,
母公司交易账户号
从custom.mobee\u push\u sms\u drc
其中bank_id='43'
和状态='A'
和手机号码“243”
还有手机号码,比如“243%”
按手机号码分组,
tran_date,
母公司交易账户号

请帮助更正sql。

您似乎缺少
GetClobVal

  SELECT SUBSTR (
            RTRIM (
               XMLAGG (XMLELEMENT (e, CONCAT (MESSAGE_TEXT, ' '))).EXTRACT (
                  '//text()').GetClobVal (),                                      --> here
               ' '),
            0,
            256)
            MESSAGE_TEXT,
         mobile_number,
         tran_date,
         parent_tran_acct_no
    FROM custom.mobee_push_sms_drc
   WHERE     bank_id = '43'
         AND status = 'A'
         AND mobile_number <> '243'
         AND mobile_number LIKE '243%'
GROUP BY mobile_number, tran_date, parent_tran_acct_no
选择SUBSTR(
RTRIM(
XMLAGG(xmlement(e,CONCAT(MESSAGE_TEXT.))。摘录(
“//text()”).GetClobVal(),-->here
' '),
0,
256)
信息文本,
手机号码,
tran_date,
母公司交易账户号
从custom.mobee\u push\u sms\u drc
其中bank_id='43'
和状态='A'
和手机号码“243”
还有手机号码,比如“243%”
按手机号码、传输日期、家长传输账号分组
没有它,Oracle正试图将
XMLtype
转换为
VARCHAR2
,而不是
CLOB
,因此结果无法匹配