sql >> Database >  >> RDS >> Oracle

Voeg de ordinale indicator toe aan een datum in Oracle

In Oracle Database kunnen we de TH . gebruiken format-element om het achtervoegsel van het rangtelwoord toe te voegen aan het resultaat van een TO_CHAR() bewerking bij het formatteren van datums.

Bijvoorbeeld, in plaats van 10 Feb . uit te voeren we kunnen 10th Feb uitvoeren . Of, in plaats van 21 century uit te voeren , we kunnen 21st century output uitvoeren . Hetzelfde geldt voor speltdatumcomponenten. Bijvoorbeeld in plaats van Twenty One , kunnen we Twenty First output uitvoeren .

Voorbeeld

Hier is een voorbeeld om te demonstreren:

SELECT TO_CHAR(DATE '2030-12-01', 'Ddth Month')
FROM DUAL;

Resultaat:

01st December

We kunnen de fm . gebruiken formaatmodifier om indien nodig de voorloopnul te verwijderen:

SELECT TO_CHAR(DATE '2030-12-01', 'fmDdth Month')
FROM DUAL;

Resultaat:

1st December

Merk op dat het hoofdlettergebruik van het volgnummer wordt bepaald door het relevante formaatelement (in dit geval de Dd deel), niet de TH achtervoegsel.

Dit is wat er gebeurt als we de tweede d . wijzigen naar hoofdletters:

SELECT TO_CHAR(DATE '2030-12-01', 'fmDDth Month')
FROM DUAL;

Resultaat:

1st December

Dus ook al hebben we de th achtervoegsel in kleine letters, had dit geen invloed op het resultaat. Hoofdlettergebruik werd bepaald door het formaatelement (exclusief de fm formaatmodificator).

We kunnen ook het volgnummer toevoegen bij het retourneren van andere datumcomponenten, zoals de eeuw:

SELECT TO_CHAR(DATE '2030-12-30', 'Ccth "Century"')
FROM DUAL;

Resultaat:

21st Century

Gespelde datums

We kunnen de SP . toevoegen format-element om het datumgedeelte te spellen:

SELECT TO_CHAR(DATE '2030-12-30', 'CCTHSP "Century"')
FROM DUAL;

Resultaat:

TWENTY-FIRST Century

En we kunnen hoofdletters gebruiken zoals vereist:

SELECT TO_CHAR(DATE '2030-12-30', 'Ccthsp "Century"')
FROM DUAL;

Resultaat:

Twenty-First Century

Dit gebeurt er als we de TH . weglaten formaatspecificatie:

SELECT TO_CHAR(DATE '2030-12-30', 'Ccsp')
FROM DUAL;

Resultaat:

Twenty-One

  1. SQL Server pivot vs. multiple join

  2. Objectafhankelijkheden weergeven in Access 2016

  3. MySQL DROP UNIEKE BEPERKING

  4. DO's en DONT's voor indexen