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

TO_DAYS() Eksempler – MySQL

I MySQL kan du bruge TO_DAYS() funktion for at finde ud af, hvor mange dage der er gået siden dag 0 for en bestemt dato. For eksempel kan du overføre dagens dato til denne funktion, og den vil returnere, hvor mange dage der er gået siden dag 0 .

Denne artikel indeholder eksempler til demonstration.

Syntaks

Syntaksen ser sådan ud:

TO_DAYS(date)

Hvor date er den dato, der skal bruges i beregningen.

Eksempel

Her er et eksempel til at demonstrere.

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

Resultat:

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

Bemærk, at MySQL-dokumentationen anbefaler, at denne funktion ikke er beregnet til brug med værdier, der går forud for fremkomsten af ​​den gregorianske kalender (1582). Dette skyldes, at den ikke tager højde for de dage, der gik tabt, da kalenderen blev ændret.

Eksempel 2 – Aktuel dato

Her er et eksempel, der bruger den aktuelle dato.

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

Resultat:

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

Først bruger jeg CURDATE() funktion for at returnere den aktuelle dato, så sender jeg den funktion til TO_DAYS() funktion til at returnere det antal dage, det har været siden dag 0 .

TO_DAYS() mod FROM_DAYS()

FROM_DAYS() funktion er det modsatte af TO_DAYS() , som, givet en dato dato, returnerer dagnummeret. Her er et eksempel for at demonstrere forholdet mellem disse to funktioner:

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

Resultat:

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

Så i dette eksempel bruger jeg TO_DAYS() for at returnere antallet af dage fra den aktuelle dato. Jeg bruger derefter FROM_DAYS() for at returnere datoen fra den værdi (som, som forventet, går tilbage til den oprindelige værdi af CURDATE() ).


  1. Sådan formateres negative tal med vinkelparenteser i Oracle

  2. Oracle SQL Query logning

  3. Ret "profilnavn er ikke gyldigt" ved afsendelse af e-mail fra SQL Server

  4. Databasemodel for en køreskoles reservationssystem. Del 2