При работе с данными в Siebel CRM возникает необходимость преобразовать данные Long в Varchar2.
CREATE OR REPLACE FUNCTION LongToVarchar(a varchar2) RETURN varchar2 IS x varchar2(32767); BEGIN SELECT EMAIL_BODY INTO x FROM S_EVT_MAIL WHERE row_id=a; RETURN substr(x,1, 1000); END;
SELECT …., LongToVarchar(S_EVT_MAIL.ROW_ID) AS EMAIL_BODY FROM S_EVT_MAIL