sql >> Database >  >> RDS >> Oracle

Hoe de AD/BC-indicator aan een datum in Oracle toe te voegen

Bij gebruik van de TO_CHAR() functie om een ​​datetime-waarde op te maken in Oracle Database, kunt u de AD/BC-indicator toevoegen door simpelweg AD toe te voegen of BC naar uw formaatmodel.

Oracle geeft dan de juiste indicator weer, afhankelijk van of de datumwaarde AD of BC is.

U kunt het in elke hoofdletter of kleine letter opgeven, en met of zonder punten (bijv. AD , A.D. ad , a.d , enzovoort). Oracle zal dan de indicator weergeven zoals gespecificeerd.

Voorbeeld

Hier is een voorbeeld om te demonstreren:

SELECT 
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY AD')
FROM DUAL;

Resultaat:

30-12-2030 AD

In dit geval is de datum AD, en dus heeft het resultaat AD toegevoegd.

AD versus BC

Oracle berekent of het AD of BC is en geeft de toepasselijke indicator weer.

Dit gebeurt er als ik de datum verander in een BC-waarde:

SELECT 
    TO_CHAR(date '-2030-12-30', 'DD-MM-YYYY AD')
FROM DUAL;

Resultaat:

30-12-2030 BC

De resulterende indicator is BC, ook al is mijn opmaakstring AD .

Hoofdletters versus kleine letters

Het wijzigen van de hoofdletters van het formaatelement verandert de hoofdletters van het resultaat:

SELECT 
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY AD') AS "Uppercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY ad') AS "Lowercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY Ad') AS "Mixed"
FROM DUAL;

Resultaat:

       Uppercase        Lowercase            Mixed 
________________ ________________ ________________ 
30-12-2030 AD    30-12-2030 ad    30-12-2030 Ad   

Stippels vs Geen stippen

U kunt desgewenst punten toevoegen:

SELECT 
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY A.D.') AS "Uppercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY a.d.') AS "Lowercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY A.d.') AS "Mixed"
FROM DUAL;

Resultaat:

         Uppercase          Lowercase              Mixed 
__________________ __________________ __________________ 
30-12-2030 A.D.    30-12-2030 a.d.    30-12-2030 A.D.    

Merk echter op dat dit de indicator voor gemengde gevallen beïnvloedde.

De datum en tijd van vandaag

Hier geef ik SYSDATE door om de huidige datum te gebruiken:

SELECT 
    TO_CHAR(SYSDATE, 'DD-MM-YYYY A.D.')
FROM DUAL;

Resultaat:

29-08-2021 A.D.

  1. Hoe levensshtein-functie in mysql toe te voegen?

  2. MySQL draait rij naar dynamisch aantal kolommen

  3. MySQL laadt NULL-waarden uit CSV-gegevens

  4. XML-tabel met Oracle 11g