Select oracle中选择的ORA-19011
我有一个select语句抛出错误 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 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
,因此结果无法匹配