sql >> Base de Datos >  >> RDS >> Mysql

TO_DAYS() Ejemplos – MySQL

En MySQL, puede usar TO_DAYS() función para averiguar cuántos días han pasado desde el día 0 para una fecha en particular. Por ejemplo, puede pasar la fecha de hoy a esta función y devolverá cuántos días han pasado desde el día 0 .

Este artículo contiene ejemplos para demostrar.

Sintaxis

La sintaxis es así:

TO_DAYS(date)

Donde date es la fecha a utilizar en el cálculo.

Ejemplo

Aquí hay un ejemplo para demostrarlo.

SELECT TO_DAYS('1999-12-31');

Resultado:

+-----------------------+
| TO_DAYS('1999-12-31') |
+-----------------------+
|                730484 |
+-----------------------+

Tenga en cuenta que la documentación de MySQL advierte que esta función no está diseñada para usarse con valores que preceden al advenimiento del calendario gregoriano (1582). Esto se debe a que no tiene en cuenta los días que se perdieron cuando se cambió el calendario.

Ejemplo 2:fecha actual

Aquí hay un ejemplo usando la fecha actual.

SELECT 
    CURDATE(),
    TO_DAYS(CURDATE());

Resultado:

+------------+--------------------+
| CURDATE()  | TO_DAYS(CURDATE()) |
+------------+--------------------+
| 2018-06-26 |             737236 |
+------------+--------------------+

Primero, uso el CURDATE() función para devolver la fecha actual, luego paso esa función a TO_DAYS() función para devolver el número de días que ha pasado desde el día 0 .

TO_DAYS() frente a FROM_DAYS()

El FROM_DAYS() la función es lo contrario de TO_DAYS() , que, dada una fecha fecha, devuelve el número de día. Aquí hay un ejemplo para demostrar la relación entre estas dos funciones:

SELECT 
    CURDATE(),
    TO_DAYS(CURDATE()),
    FROM_DAYS(TO_DAYS(CURDATE()));

Resultado:

+------------+--------------------+-------------------------------+
| CURDATE()  | TO_DAYS(CURDATE()) | FROM_DAYS(TO_DAYS(CURDATE())) |
+------------+--------------------+-------------------------------+
| 2018-06-26 |             737236 | 2018-06-26                    |
+------------+--------------------+-------------------------------+

Así que en este ejemplo uso TO_DAYS() para devolver el número de días a partir de la fecha actual. Luego uso FROM_DAYS() para devolver la fecha de ese valor (que, como se esperaba, se resuelve de nuevo en el valor original de CURDATE() ).