Mysql
 sql >> Database >  >> RDS >> Mysql

TO_DAYS() Esempi – MySQL

In MySQL, puoi usare TO_DAYS() funzione per scoprire quanti giorni sono trascorsi dal giorno 0 per una data particolare. Ad esempio, puoi passare la data odierna a questa funzione e restituirà quanti giorni sono trascorsi dal giorno 0 .

Questo articolo contiene esempi da dimostrare.

Sintassi

La sintassi è questa:

TO_DAYS(date)

Dove date è la data da utilizzare nel calcolo.

Esempio

Ecco un esempio da dimostrare.

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

Risultato:

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

Si noti che la documentazione MySQL avverte che questa funzione non è destinata all'uso con valori che precedono l'avvento del calendario gregoriano (1582). Questo perché non tiene conto dei giorni persi quando è stato modificato il calendario.

Esempio 2 – Data corrente

Ecco un esempio che utilizza la data corrente.

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

Risultato:

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

Per prima cosa, utilizzo CURDATE() funzione per restituire la data corrente, quindi passo quella funzione a TO_DAYS() funzione per restituire il numero di giorni trascorsi dal giorno 0 .

TO_DAYS() vs FROM_DAYS()

Il FROM_DAYS() la funzione è l'opposto di TO_DAYS() , che, data una data, restituisce il numero del giorno. Ecco un esempio per dimostrare la relazione tra queste due funzioni:

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

Risultato:

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

Quindi in questo esempio uso TO_DAYS() per restituire il numero di giorni dalla data corrente. Quindi uso FROM_DAYS() per restituire la data da quel valore (che, come previsto, torna al valore originale di CURDATE() ).