sql >> Databasteknik >  >> RDS >> MariaDB

Hur man returnerar dagnumret med ett suffix i MariaDB

MariaDB innehåller en stor samling av datum- och tidsfunktioner som returnerar ett givet datum i ett visst format.

En sak du kan göra är att returnera dagnumret med det relevanta suffixet "st/nd/rd/th". Till exempel, istället för att returnera den som säg, 10 juli 2025, returneras den som 10 juli 2025.

Nedan är ett exempel på att lägga till relevant suffix till ett dagnummer i MariaDB.

Exempel

För att returnera dagnumret med relevant suffix kan du använda DATE_FORMAT() funktion.

Denna funktion accepterar ett datum och en formatsträng. Formatsträngen anger hur det givna datumet ska formateras. Formatsträngen består av en eller flera formatspecifikationer.

%D format specifier returnerar dagen med engelskt suffix. Så att inkludera denna formatspecifikation returnerar dagen med en av st , nd , rd , eller th bifogas, beroende på det faktiska dagnumret.

Exempel:

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

Resultat:

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

Här kombinerade jag tre formatspecifikationer (%D %M %Y ) för att producera ett fullständigt datum. I det här fallet var dagnumret 1 och så st läggs till automatiskt.

Här är några fler exempel för att demonstrera de olika suffixen:

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";

Resultat:

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

I det här fallet använder jag bara en formatspecifikation (%D ) bara för att hålla exemplet kortfattat, men formatsträngen kan innehålla hur många format som helst. Se den här listan över MariaDB-formatspecifikationer för mer.


  1. SQL Server blockerade åtkomst till proceduren 'sys.sp_OACreate' för komponenten 'Ole Automation Procedures'

  2. Hur tar man bort HTML-taggar från en sträng i SQL Server?

  3. Native Library sqljdbc_auth.dll har redan laddats i en annan klassladdare

  4. Hur man hittar en sträng i en sträng i SQL Server