Oracle: большое число, получающее преобразованную научную запись (40 цифр) при конкатенации - PullRequest
0 голосов
/ 11 сентября 2018

Oracle преобразует число в строку при объединении или перемещении его в _char.

Пример:

select value from tab;
value
9076725748515642018090620180906173606980000000000000000000000000000000000000000

select RPAD(value,LENGTH(value)+1,chr(135)) from tab;

RPAD(value,LENGTH(value)+1,chr(135))
9.0767257485156420180906201809061736E+78‡

Ожидаемый результат

9076725748515642018090620180906173606980000000000000000000000000000000000000000‡

1 Ответ

0 голосов
/ 12 сентября 2018

Может быть PL / SQL может вам помочь. Вы можете попробовать ниже скрипт.

CREATE OR REPLACE FUNCTION test123 (p_number NUMBER) return VARCHAR2
IS
    v_no VARCHAR2(100);
BEGIN
    EXECUTE IMMEDIATE 
     'select '''||p_number||'''||CHR(135) '||
      ' from dual'
      INTO v_no;
    RETURN v_no;
END;
/

SELECT TEST123(9076725748515642018090620180906173606980000000000000000000000000000000000000000) 
FROM DUAL;

OUTPUT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
--------------------------------------------------------------------------------
9076725748515642018090620180906173606980000000000000000000000000000000000000000‡ 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...