En MySQL, el DAY()
función es un sinónimo de DAYOFMONTH()
función. Se usa para devolver el día del mes a partir de una fecha.
En este contexto, el "día del mes" es un valor entre 1 y 31, o 0 para fechas con una parte de día cero. Por ejemplo, si proporciona una fecha de 2020-05-03 , el DAY()
la función devolverá 3 .
Sintaxis
La sintaxis es así:
DAY(date)
Donde date
es el valor de fecha del que desea que se devuelva el día del mes.
Ejemplo
Aquí hay un ejemplo para demostrarlo.
SELECT DAY('2020-06-18') AS 'Result';
Resultado:
+--------+ | Result | +--------+ | 18 | +--------+
Si la parte del día tiene un cero inicial, el cero inicial se omite del resultado. Ejemplo:
SELECT DAY('2020-06-07') AS 'Result';
Resultado:
+--------+ | Result | +--------+ | 7 | +--------+
Un ejemplo de base de datos
Este es un ejemplo de cómo extraer la parte del día de una columna cuando se ejecuta una consulta en una base de datos.
USE sakila; SELECT payment_date AS 'Date/Time', DAY(payment_date) AS 'Day of Month' FROM payment WHERE payment_id = 1;
Resultado:
+---------------------+--------------+ | Date/Time | Day of Month | +---------------------+--------------+ | 2005-05-25 11:30:37 | 25 | +---------------------+--------------+
Fecha/hora actual
Aquí hay un ejemplo de cómo extraer la parte del día de la fecha y hora actuales (que se devuelve usando NOW()
función).
SELECT NOW(), DAY(NOW());
Resultado:
+---------------------+------------+ | NOW() | DAY(NOW()) | +---------------------+------------+ | 2018-06-25 18:30:44 | 25 | +---------------------+------------+
Otra forma de hacer esto es usar CURDATE()
función, que devuelve solo la fecha (pero no la hora).
SELECT CURDATE(), DAY(CURDATE());
Resultado:
+------------+----------------+ | CURDATE() | DAY(CURDATE()) | +------------+----------------+ | 2018-06-25 | 25 | +------------+----------------+