sql >> Databáze >  >> RDS >> Mysql

TO_DAYS() Příklady – MySQL

V MySQL můžete použít TO_DAYS() funkce ke zjištění, kolik dní uplynulo ode dne 0 pro konkrétní datum. Této funkci můžete například předat dnešní datum a funkce vrátí, kolik dní uplynulo ode dne 0 .

Tento článek obsahuje příklady k demonstraci.

Syntaxe

Syntaxe vypadá takto:

TO_DAYS(date)

Kde date je datum, které se má použít ve výpočtu.

Příklad

Zde je příklad k demonstraci.

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

Výsledek:

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

Všimněte si, že dokumentace MySQL radí, že tato funkce není určena pro použití s ​​hodnotami, které předcházejí příchodu gregoriánského kalendáře (1582). Je to proto, že nebere v úvahu dny, které byly ztraceny při změně kalendáře.

Příklad 2 – Aktuální datum

Zde je příklad s použitím aktuálního data.

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

Výsledek:

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

Nejprve použiji CURDATE() funkce vrátit aktuální datum, pak tuto funkci předám do TO_DAYS() funkce, která vrátí počet dní, které uplynuly ode dne 0 .

TO_DAYS() vs. FROM_DAYS()

FROM_DAYS() Funkce je opakem funkce TO_DAYS() , který po zadání data vrátí číslo dne. Zde je příklad demonstrující vztah mezi těmito dvěma funkcemi:

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

Výsledek:

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

V tomto příkladu tedy používám TO_DAYS() vrátit počet dní od aktuálního data. Poté použiji FROM_DAYS() vrátit datum z této hodnoty (které se podle očekávání vrátí zpět na původní hodnotu CURDATE() ).


  1. Porovnejte prováděcí plány na serveru SQL Server

  2. Předání pole dat jako vstupního parametru proceduře Oracle

  3. Oracle odstranění řádků z více tabulek

  4. Pivoting dat pomocí dvou sloupců