In Oracle Database, il RM
L'elemento format consente di restituire il mese in numeri romani quando si utilizza TO_CHAR()
funzione.
Puoi anche usare il fm
modificatore per eliminare qualsiasi riempimento.
Esempio
Ecco un esempio da dimostrare:
SELECT
TO_CHAR(date '2030-04-08', 'DD-RM-YYYY')
FROM DUAL;
Risultato:
08-IV -2030
In questo caso, il numero del mese è 04
, e il numero romano equivalente è IV
.
minuscole vs maiuscole
Puoi usare rm
(in minuscolo) per restituire i numeri romani in minuscolo:
SELECT
TO_CHAR(date '2030-04-08', 'DD-rm-YYYY')
FROM DUAL;
Risultato:
08-iv -2030
Rimuovi imbottitura
Per impostazione predefinita, il mese viene riempito con spazi finali fino alla lunghezza di 4, che è la lunghezza di viii
. Possiamo vederlo negli esempi precedenti.
Per eliminare il riempimento, usa il fm
modificatore di formato:
SELECT
TO_CHAR(date '2030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
Risultato:
08-IV-2030
Nota che questo eliminerà qualsiasi riempimento da tutti gli elementi successivi. Nel nostro caso, anche il padding sarà soppresso dall'anno. Se il nostro anno è lungo meno di quattro cifre, non avrà zeri iniziali:
SELECT
TO_CHAR(date '0030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
Risultato:
08-IV-30
Se vogliamo mantenere gli zeri iniziali, possiamo anteporre YYYY
con fm
:
SELECT
TO_CHAR(date '0030-04-08', 'DD-fmRM-fmYYYY')
FROM DUAL;
Risultato:
08-IV-0030
Il fm
modificatore agisce effettivamente come un interruttore che abilita/disabilita la modalità di riempimento.
Se vogliamo eliminare tutto il riempimento nella data, possiamo semplicemente anteporre l'intero modello di formato con un singolo fm
:
SELECT
TO_CHAR(date '0030-04-08', 'fmDD-RM-YYYY')
FROM DUAL;
Risultato:
8-IV-30