sql >> Database >  >> RDS >> MariaDB

2 manieren om de korte maandnaam van een datum in MariaDB te krijgen

Hier zijn twee manieren om de naam van de korte maand te retourneren vanaf een datum in MariaDB.

De DATE_FORMAT() Functie

De DATE_FORMAT() functie formatteert een bepaalde datum in een gespecificeerd formaat. U geeft de datum en het formaat op wanneer u de functie aanroept.

Passeren %b omdat de formaatreeks de korte naam van de maand retourneert.

Voorbeeld:

SELECT DATE_FORMAT('2023-09-20', '%b');

Resultaat:

+---------------------------------+
| DATE_FORMAT('2023-09-20', '%b') |
+---------------------------------+
| Sep                             |
+---------------------------------+

De MONTHNAME() Functie

De MONTHNAME() functie retourneert de volledige naam van de maand vanaf een datum. De naam van de korte maand wordt niet geretourneerd. Het kan echter worden doorgegeven aan de LEFT() functie om indien nodig alleen de eerste 3 tekens van de maandnaam te retourneren.

Voorbeeld:

SELECT LEFT(MONTHNAME('2023-09-20'), 3);

Resultaat:

+----------------------------------+
| LEFT(MONTHNAME('2023-09-20'), 3) |
+----------------------------------+
| Sep                              |
+----------------------------------+

Deze aanpak werkt niet noodzakelijk in alle talen. Dit is bijvoorbeeld wat er gebeurt bij het gebruik van Thai :

SET lc_time_names = 'th_TH';
SELECT 
    DATE_FORMAT('2023-09-20', '%b') AS "Short 1",
    LEFT(MONTHNAME('2023-09-20'), 3) AS "Short 2",
    MONTHNAME('2023-09-20') AS "Full";

Resultaat:

+----------+-----------+-----------------------+
| Short 1  | Short 2   | Full                  |
+----------+-----------+-----------------------+
| ก.ย.     | กัน       | กันยายน               |
+----------+-----------+-----------------------+

  1. Alternatief voor lead lag-functie in SQL Server 2008

  2. ORA-04091:tabel [blah] muteert, trigger/functie ziet het mogelijk niet

  3. Hoe een GUID genereren in Oracle?

  4. Geef tabel door als parameter in sql-server UDF