sql >> Database >  >> RDS >> MariaDB

Hoe het dagnummer terug te geven met een achtervoegsel in MariaDB

MariaDB bevat een grote verzameling datum- en tijdfuncties die een bepaalde datum in een bepaald formaat retourneren.

Een ding dat u kunt doen, is het dagnummer retourneren met het relevante achtervoegsel "st/nd/rd/th". Bijvoorbeeld, in plaats van het terug te sturen zoals bijvoorbeeld 10 juli 2025, wordt het teruggestuurd als 10 juli 2025.

Hieronder ziet u een voorbeeld van het toevoegen van het relevante achtervoegsel aan een dagnummer in MariaDB.

Voorbeeld

Om het dagnummer met het relevante achtervoegsel terug te geven, kunt u de DATE_FORMAT() gebruiken functie.

Deze functie accepteert een datum- en een formaattekenreeks. De format string geeft aan hoe de gegeven datum moet worden opgemaakt. De opmaakreeks bestaat uit een of meer opmaakspecificaties.

De %D formaatspecificatie retourneert de dag met een Engels achtervoegsel. Dus als u deze formaatspecificatie opneemt, wordt de dag geretourneerd met een van st , nd , rd , of rd toegevoegd, afhankelijk van het actuele dagnummer.

Voorbeeld:

SELECT DATE_FORMAT('2030-01-01', '%D %M %Y');

Resultaat:

+---------------------------------------+
| DATE_FORMAT('2030-01-01', '%D %M %Y') |
+---------------------------------------+
| 1st January 2030                      |
+---------------------------------------+

Hier heb ik drie formaatspecificaties gecombineerd (%D %M %Y ) om een ​​volledige datum te produceren. In dit geval was het dagnummer 1 en dus st wordt automatisch toegevoegd.

Hier zijn nog enkele voorbeelden om de verschillende achtervoegsels te demonstreren:

SELECT 
    DATE_FORMAT('2030-01-01', '%D') AS "1",
    DATE_FORMAT('2030-01-02', '%D') AS "2",
    DATE_FORMAT('2030-01-03', '%D') AS "3",
    DATE_FORMAT('2030-01-04', '%D') AS "4",
    DATE_FORMAT('2030-01-20', '%D') AS "20",
    DATE_FORMAT('2030-01-21', '%D') AS "21",
    DATE_FORMAT('2030-01-22', '%D') AS "22",
    DATE_FORMAT('2030-01-23', '%D') AS "23",
    DATE_FORMAT('2030-01-24', '%D') AS "24";

Resultaat:

+------+------+------+------+------+------+------+------+------+
| 1    | 2    | 3    | 4    | 20   | 21   | 22   | 23   | 24   |
+------+------+------+------+------+------+------+------+------+
| 1st  | 2nd  | 3rd  | 4th  | 20th | 21st | 22nd | 23rd | 24th |
+------+------+------+------+------+------+------+------+------+

In dit geval gebruik ik slechts één formaatspecificatie (%D ) om het voorbeeld beknopt te houden, maar de opmaakreeks kan een willekeurig aantal opmaakspecificaties bevatten. Zie deze lijst met MariaDB-indelingsspecificaties voor meer informatie.


  1. De waarde van gegevens in de loop van de tijd

  2. lijstweergave toont de gegevens uit de database in Android

  3. Database naamgevingsconventies door Microsoft?

  4. MySQL - hoeveel rijen kan ik invoegen in één enkele INSERT-instructie?