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

FROM_DAYS() Esempi – MySQL

In MySQL, il FROM_DAYS() La funzione restituisce un valore di data basato sul numero di giorni fornito come argomento.

Questo articolo contiene esempi da dimostrare.

Sintassi

La sintassi è questa:

FROM_DAYS(N)

Dove N è il numero di giorni dal giorno 0 .

Esempio

Ecco un esempio da dimostrare.

SELECT FROM_DAYS(366);

Risultato:

+----------------+
| FROM_DAYS(366) |
+----------------+
| 0001-01-01     |
+----------------+

Anche se si noti che la documentazione MySQL consiglia che questa funzione non è intesa per l'uso con valori che precedono l'avvento del calendario gregoriano (1582).

Ecco un esempio con una data successiva:

SELECT FROM_DAYS(645000);

Risultato:

+-------------------+
| FROM_DAYS(645000) |
+-------------------+
| 1765-12-13        |
+-------------------+

E ancora una data successiva:

SELECT FROM_DAYS(745000);

Risultato:

+-------------------+
| FROM_DAYS(745000) |
+-------------------+
| 2039-09-28        |
+-------------------+

DA_GIORNI() vs TO_GIORNI()

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() ).