Quando si utilizza TO_CHAR()
funzione in Oracle Database, puoi utilizzare il RN
elemento di formato per restituire il numero come numeri romani. Usando il minuscolo (rn
) restituisce i numeri romani in minuscolo.
Esempio
Ecco un esempio da dimostrare:
SELECT TO_CHAR(748, 'fmRN') FROM DUAL;
Risultato:
DCCXLVIII
Nota che sto usando fm
modificatore di formato per eliminare qualsiasi riempimento che potrebbe essere applicato.
Ecco cosa succede quando rimuovo fm
modificatore di formato:
SELECT TO_CHAR(748, 'RN') FROM DUAL;
Risultato:
DCCXLVIII
Minuscolo
Usando un rn
minuscolo restituisce i numeri romani in minuscolo:
SELECT TO_CHAR(748, 'fmrn') FROM DUAL;
Risultato:
dccxlviii
Fuori dall'intervallo
Quando si utilizza il RN
/rn
format, il valore deve essere compreso tra 1 e 3999.
Ecco cosa succede quando fornisco un numero al di fuori di questo intervallo:
SELECT TO_CHAR(4000, 'fmrn') FROM DUAL;
Risultato:
###############
Ma riducendolo di 1 va bene:
SELECT TO_CHAR(3999, 'fmrn') FROM DUAL;
Risultato:
mmmcmxcix
Ed ecco un valore negativo:
SELECT TO_CHAR(-1, 'fmrn') FROM DUAL;
Risultato:
###############