MariaDB
 sql >> Base de données >  >> RDS >> MariaDB

Unités de date et d'heure MariaDB

Vous trouverez ci-dessous une liste complète des unités de date et d'heure pouvant être utilisées dans MariaDB.

Unité Description
MICROSECOND Microsecondes
SECOND Secondes
MINUTE Minutes
HOUR Heures
DAY Jours
WEEK Semaines
MONTH Mois
QUARTER Quartiers
YEAR Années
SECOND_MICROSECOND Secondes.Microsecondes
MINUTE_MICROSECOND Minutes.Secondes.Microsecondes
MINUTE_SECOND Minutes.Secondes
HOUR_MICROSECOND Heures.Minutes.Secondes.Microsecondes
HOUR_SECOND Heures.Minutes.Secondes
HOUR_MINUTE Heures.Minutes
DAY_MICROSECOND Jours Heures.Minutes.Secondes.Microsecondes
DAY_SECOND Jours Heures.Minutes.Secondes
DAY_MINUTE Jours Heures.Minutes
DAY_HOUR Jours Heures
YEAR_MONTH Années-Mois

Ceux-ci peuvent être utilisés avec le + et - opérateurs lors de l'exécution d'arithmétiques sur des dates, avec des fonctions telles que ADDDATE() , SUBDATE() , DATE_ADD() , DATE_SUB() , EXTRACT() , TIMESTAMPADD() , et TIMESTAMPDIFF() .

Ils peuvent également être utilisés dans le ON SCHEDULE clause du CREATE_EVENT() et ALTER_EVENT() fonctions.

Les unités de temps contenant un trait de soulignement sont des unités composites. Ceux-ci se composent de plus d'une unité de temps de base. Il s'agit en quelque sorte d'un raccourci pour spécifier plusieurs unités en une seule fois. Chaque unité peut être séparée par n'importe quel caractère de ponctuation.

Exemples

Voici un exemple d'ajout d'une heure à une expression datetime :

SELECT '2021-05-31 10:00:00' + INTERVAL 1 HOUR;

Résultat :

+-----------------------------------------+
| '2021-05-31 10:00:00' + INTERVAL 1 HOUR |
+-----------------------------------------+
| 2021-05-31 11:00:00                     |
+-----------------------------------------+

Dans ce cas, nous utilisons le + opérateur pour effectuer l'addition.

Fonctions DateHeure

Les unités de date et d'heure peuvent être utilisées avec diverses fonctions de date.

Le voici avec le DATE_ADD() fonction :

SELECT DATE_ADD('2021-05-31 10:00:00', INTERVAL 1 HOUR);

Résultat :

+--------------------------------------------------+
| DATE_ADD('2021-05-31 10:00:00', INTERVAL 1 HOUR) |
+--------------------------------------------------+
| 2021-05-31 11:00:00                              |
+--------------------------------------------------+

Unités composites

Voici un exemple qui utilise des unités composées :

SELECT 
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:2' YEAR_MONTH) AS "YEAR_MONTH",
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:25:35' HOUR_SECOND) AS "HOUR_SECOND",
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30:25' DAY_MINUTE) AS "DAY_MINUTE";

Résultat :

+---------------------+---------------------+---------------------+
| YEAR_MONTH          | HOUR_SECOND         | DAY_MINUTE          |
+---------------------+---------------------+---------------------+
| 2022-07-01 10:00:00 | 2021-05-01 11:25:35 | 2021-05-03 16:25:00 |
+---------------------+---------------------+---------------------+

Les nombres entiers peuvent être séparés par n'importe quel caractère de ponctuation. Par conséquent, nous pourrions remplacer les deux-points par des points pour obtenir le même résultat :

SELECT 
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1.2' YEAR_MONTH) AS "YEAR_MONTH",
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1.25.35' HOUR_SECOND) AS "HOUR_SECOND",
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1.30.25' DAY_MINUTE) AS "DAY_MINUTE";

Résultat :

+---------------------+---------------------+---------------------+
| YEAR_MONTH          | HOUR_SECOND         | DAY_MINUTE          |
+---------------------+---------------------+---------------------+
| 2022-07-01 10:00:00 | 2021-05-01 11:25:35 | 2021-05-03 16:25:00 |
+---------------------+---------------------+---------------------+