MariaDB
 sql >> Database >  >> RDS >> MariaDB

Unità di data e ora di MariaDB

Di seguito è riportato un elenco completo delle unità di data e ora che possono essere utilizzate in MariaDB.

Unità Descrizione
MICROSECOND Microsecondi
SECOND Secondi
MINUTE Minuti
HOUR Ore
DAY Giorni
WEEK Settimane
MONTH Mesi
QUARTER Trimestri
YEAR Anni
SECOND_MICROSECOND Secondi.Microsecondi
MINUTE_MICROSECOND Minuti.Secondi.Microsecondi
MINUTE_SECOND Minuti.Secondi
HOUR_MICROSECOND Ore.Minuti.Secondi.Microsecondi
HOUR_SECOND Ore.Minuti.Secondi
HOUR_MINUTE Ore.Minuti
DAY_MICROSECOND Giorni Ore.Minuti.Secondi.Microsecondi
DAY_SECOND Giorni Ore.Minuti.Secondi
DAY_MINUTE Giorni Ore.Minuti
DAY_HOUR Giorni Orari
YEAR_MONTH Anni-mesi

Questi possono essere utilizzati con il + e - operatori quando si eseguono operazioni aritmetiche sulle date, con funzioni come ADDDATE() , SUBDATE() , DATE_ADD() , DATE_SUB() , EXTRACT() , TIMESTAMPADD() e TIMESTAMPDIFF() .

Possono essere utilizzati anche in ON SCHEDULE clausola del CREATE_EVENT() e ALTER_EVENT() funzioni.

Le unità di tempo che contengono un trattino basso sono unità composte. Questi sono costituiti da più di un'unità di tempo di base. Questi sono una specie di modo abbreviato per specificare più unità in una volta sola. Ogni unità può essere separata da qualsiasi carattere di punteggiatura.

Esempi

Ecco un esempio di aggiunta di un'ora a un'espressione datetime:

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

Risultato:

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

In questo caso utilizziamo il + operatore per eseguire l'aggiunta.

Funzioni data/ora

Le unità di data e ora possono essere utilizzate con varie funzioni di data.

Eccolo con il DATE_ADD() funzione:

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

Risultato:

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

Unità composite

Ecco un esempio che utilizza unità composite:

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";

Risultato:

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

I numeri interi possono essere separati da qualsiasi carattere di punteggiatura. Pertanto, potremmo sostituire i due punti con punti per ottenere lo stesso risultato:

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";

Risultato:

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