No MySQL, você pode usar o
TO_DAYS() função para descobrir quantos dias se passaram desde o dia 0 para uma determinada data. Por exemplo, você pode passar a data de hoje para esta função e ela retornará quantos dias se passaram desde o dia 0 . Este artigo contém exemplos para demonstrar.
Sintaxe
A sintaxe fica assim:
TO_DAYS(date)
Onde
date é a data a ser usada no cálculo. Exemplo
Aqui está um exemplo para demonstrar.
SELECT TO_DAYS('1999-12-31');
Resultado:
+-----------------------+
| TO_DAYS('1999-12-31') |
+-----------------------+
| 730484 |
+-----------------------+
Observe que a documentação do MySQL informa que esta função não se destina ao uso com valores que precedem o advento do calendário gregoriano (1582). Isso porque não leva em consideração os dias que foram perdidos quando o calendário foi alterado.
Exemplo 2 - Data atual
Aqui está um exemplo usando a data atual.
SELECT
CURDATE(),
TO_DAYS(CURDATE());
Resultado:
+------------+--------------------+ | CURDATE() | TO_DAYS(CURDATE()) | +------------+--------------------+ | 2018-06-26 | 737236 | +------------+--------------------+
Primeiro, eu uso o
CURDATE() função para retornar a data atual, então eu passo essa função para o TO_DAYS() função para retornar o número de dias desde o dia 0 . TO_DAYS() vs FROM_DAYS()
O
FROM_DAYS() função é o oposto de TO_DAYS() , que, dada uma data data, retorna o número do dia. Aqui está um exemplo para demonstrar a relação entre essas duas funções: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 | +------------+--------------------+-------------------------------+
Então neste exemplo eu uso
TO_DAYS() para retornar o número de dias a partir da data atual. Eu então uso FROM_DAYS() para retornar a data desse valor (que, como esperado, retorna ao valor original de CURDATE() ).