In Oracle Database, de RM
formaatelement stelt u in staat om de maand in Romeinse cijfers te retourneren bij gebruik van de TO_CHAR()
functie.
U kunt ook de fm
. gebruiken modifier om opvulling te onderdrukken.
Voorbeeld
Hier is een voorbeeld om te demonstreren:
SELECT
TO_CHAR(date '2030-04-08', 'DD-RM-YYYY')
FROM DUAL;
Resultaat:
08-IV -2030
In dit geval is het maandnummer 04
, en het equivalent in Romeinse cijfers is IV
.
Kleine letters versus hoofdletters
U kunt rm
. gebruiken (in kleine letters) om de Romeinse cijfers in kleine letters terug te geven:
SELECT
TO_CHAR(date '2030-04-08', 'DD-rm-YYYY')
FROM DUAL;
Resultaat:
08-iv -2030
Opvulling verwijderen
Standaard wordt de maand opgevuld met spaties tot een lengte van 4, wat de lengte is van viii
. We kunnen dat zien in de bovenstaande voorbeelden.
Gebruik de fm
. om de opvulling te onderdrukken formaatmodificator:
SELECT
TO_CHAR(date '2030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
Resultaat:
08-IV-2030
Merk op dat hierdoor eventuele opvulling van alle volgende elementen wordt onderdrukt. In ons geval wordt de padding vanaf het jaar ook onderdrukt. Als ons jaartal minder dan vier cijfers lang is, heeft het geen voorloopnullen:
SELECT
TO_CHAR(date '0030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
Resultaat:
08-IV-30
Als we de voorloopnullen willen behouden, kunnen we het voorvoegsel YYYY
met fm
:
SELECT
TO_CHAR(date '0030-04-08', 'DD-fmRM-fmYYYY')
FROM DUAL;
Resultaat:
08-IV-0030
De fm
modifier werkt in feite als een schakelaar die de vulmodus in-/uitschakelt.
Als we alle opvulling in de datum willen onderdrukken, kunnen we het hele formaatmodel eenvoudig vooraf laten gaan met een enkele fm
:
SELECT
TO_CHAR(date '0030-04-08', 'fmDD-RM-YYYY')
FROM DUAL;
Resultaat:
8-IV-30