sql >> Base de Datos >  >> RDS >> MariaDB

Cómo devolver el número de día con un sufijo en MariaDB

MariaDB incluye una gran colección de funciones de fecha y hora que devuelven una fecha determinada en un formato determinado.

Una cosa que puede hacer es devolver el número de día con el sufijo "st/nd/rd/th" relevante. Por ejemplo, en lugar de devolverlo como, digamos, 10 de julio de 2025, se devuelve como 10 de julio de 2025.

A continuación se muestra un ejemplo de cómo agregar el sufijo relevante a un número de día en MariaDB.

Ejemplo

Para devolver el número de día con el sufijo relevante, puede usar DATE_FORMAT() función.

Esta función acepta una fecha y una cadena de formato. La cadena de formato especifica cómo debe formatearse la fecha dada. La cadena de formato consta de uno o más especificadores de formato.

El %D El especificador de formato devuelve el día con sufijo en inglés. Por lo tanto, incluir este especificador de formato devolverá el día con uno de st , nd , rd , o th adjunto, según el número de día real.

Ejemplo:

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

Resultado:

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

Aquí, combiné tres especificadores de formato (%D %M %Y ) para producir una fecha completa. En este caso, el número de día era 1 y así st se adjunta automáticamente.

Aquí hay algunos ejemplos más, para demostrar los diversos sufijos:

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

Resultado:

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

En este caso, solo uso un especificador de formato (%D ) solo para que el ejemplo sea conciso, pero la cadena de formato puede contener cualquier número de especificadores de formato. Consulte esta lista de especificadores de formato MariaDB para obtener más información.