Mysql
 sql >> Base de données >  >> RDS >> Mysql

TO_DAYS() Exemples – MySQL

Dans MySQL, vous pouvez utiliser le TO_DAYS() fonction pour savoir combien de jours se sont écoulés depuis le jour 0 pour une date précise. Par exemple, vous pouvez transmettre la date d'aujourd'hui à cette fonction, et elle renverra le nombre de jours écoulés depuis le jour 0 .

Cet article contient des exemples à démontrer.

Syntaxe

La syntaxe ressemble à ceci :

TO_DAYS(date)

date est la date à utiliser dans le calcul.

Exemple

Voici un exemple pour illustrer.

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

Résultat :

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

Notez que la documentation MySQL indique que cette fonction n'est pas destinée à être utilisée avec des valeurs qui précèdent l'avènement du calendrier grégorien (1582). En effet, il ne prend pas en compte les jours perdus lors du changement de calendrier.

Exemple 2 - Date actuelle

Voici un exemple utilisant la date actuelle.

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

Résultat :

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

Tout d'abord, j'utilise le CURDATE() fonction pour renvoyer la date actuelle, puis je passe cette fonction au TO_DAYS() fonction pour renvoyer le nombre de jours écoulés depuis le jour 0 .

TO_DAYS() contre FROM_DAYS()

Le FROM_DAYS() la fonction est l'opposé de TO_DAYS() , qui, étant donné une date date, renvoie le numéro du jour. Voici un exemple pour illustrer la relation entre ces deux fonctions :

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

Résultat :

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

Donc, dans cet exemple, j'utilise TO_DAYS() pour renvoyer le nombre de jours à partir de la date actuelle. J'utilise ensuite FROM_DAYS() pour renvoyer la date à partir de cette valeur (qui, comme prévu, revient à la valeur d'origine de CURDATE() ).