Oracle
 sql >> Database >  >> RDS >> Oracle

Come formattare i numeri come numeri romani in Oracle

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:

###############