sql >> Database >  >> RDS >> Oracle

Over het RM-formaatelement in Oracle

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

  1. Wat betekent het om een ​​database te "normaliseren"?

  2. Postgres Kopiëren van variabele met CSV-gegevens

  3. Welke impact kunnen verschillende cursoropties hebben?

  4. MySQL Preferred Engine - MyISAM of InnoDB