MariaDB offre diversi modi per aggiungere un certo numero di giorni a una data data. Ad esempio, potresti voler aggiungere 10 giorni a una data, 30 giorni o anche solo 1 giorno. Fortunatamente, MariaDB lo rende facile.
Ecco 8 modi per aggiungere un numero di giorni a una data data in MariaDB.
Il ADDDATE()
Funzione
Iniziamo con ADDDATE()
funzione.
Questa funzione ha due diverse sintassi. La prima sintassi fornisce un modo conciso per aggiungere un certo numero di giorni a una data.
Esempio:
SELECT ADDDATE('2021-05-01', 10);
Risultato:
+---------------------------+ | ADDDATE('2021-05-01', 10) | +---------------------------+ | 2021-05-11 | +---------------------------+
Usando questa sintassi, forniamo due argomenti. Il primo argomento è la data e il secondo è il numero di giorni da aggiungere a quella data.
Il ADDDATE()
Funzione – Sintassi 2
Il ADDDATE()
funzione ha anche una sintassi più dettagliata. Questa sintassi ci consente di essere più espliciti nel modo in cui aggiungiamo i giorni alla data.
Esempio:
SELECT ADDDATE('2021-05-01', INTERVAL 10 DAY);
Risultato:
+----------------------------------------+ | ADDDATE('2021-05-01', INTERVAL 10 DAY) | +----------------------------------------+ | 2021-05-11 | +----------------------------------------+
In questo caso, utilizziamo il INTERVAL
parola chiave, seguito dal numero di giorni, seguito da DAY
parola chiave.
Il INTERVAL
viene utilizzata per aggiungere o sottrarre un intervallo di tempo a un DATETIME
, DATE
o TIME
valore. Possiamo usarlo nelle date, insieme all'unità di data/ora applicabile per aggiungere un certo numero di giorni alla nostra data. Nel nostro caso, l'unità di data/ora è DAY
, ma potrebbe essere altrettanto facilmente MONTH
, YEAR
, TIME
, ecc, nonché un certo numero di unità composite.
Il DATE_ADD()
Funzione
Il DATE_ADD()
la funzione funziona come ADDDATE()
quando si utilizza la sintassi dettagliata. Infatti, quando si utilizza la sintassi dettagliata, ADDDATE()
è sinonimo di DATE_ADD()
.
Esempio:
SELECT DATE_ADD('2021-05-01', INTERVAL 10 DAY);
Risultato:
+-----------------------------------------+ | DATE_ADD('2021-05-01', INTERVAL 10 DAY) | +-----------------------------------------+ | 2021-05-11 | +-----------------------------------------+
Il SUBDATE()
Funzione – Sintassi 1
Il SUBDATE()
la funzione ti consente di sottrarre un importo a una data. Tuttavia, se fornisci un valore negativo da sottrarre, finisce per essere aggiunto alla data.
Esempio:
SELECT SUBDATE('2021-05-01', -10);
Risultato:
+----------------------------+ | SUBDATE('2021-05-01', -10) | +----------------------------+ | 2021-05-11 | +----------------------------+
Il SUBDATE()
Funzione – Sintassi 2
Il SUBDATE()
La funzione ha anche la sintassi più dettagliata (simile a ADDDATE()
funzione).
Esempio:
SELECT SUBDATE('2021-05-01', INTERVAL -10 DAY);
Risultato:
+-----------------------------------------+ | SUBDATE('2021-05-01', INTERVAL -10 DAY) | +-----------------------------------------+ | 2021-05-11 | +-----------------------------------------+
Il DATE_SUB()
Funzione
Ecco un esempio che utilizza DATE_SUB()
funzione:
SELECT DATE_SUB('2021-05-01', INTERVAL -10 DAY);
Risultato:
+------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL -10 DAY) | +------------------------------------------+ | 2021-05-11 | +------------------------------------------+
Il +
Operatore
Un'altra opzione è usare il +
operatore.
Il +
operatore viene utilizzato per eseguire l'aggiunta e possiamo usarlo nelle date, insieme all'unità di data/ora applicabile per aggiungere un certo numero di giorni alla nostra data.
Esempio:
SELECT '2021-05-01' + INTERVAL 10 DAY;
Risultato:
+--------------------------------+ | '2021-05-01' + INTERVAL 10 DAY | +--------------------------------+ | 2021-05-11 | +--------------------------------+
Il -
Operatore
Il -
operatore può essere utilizzato per sottrarre un importo da una data. Tuttavia, se sottrai un numero negativo, alla data viene aggiunto un importo positivo:
SELECT '2021-05-01' - INTERVAL -10 DAY;
Risultato:
+---------------------------------+ | '2021-05-01' - INTERVAL -10 DAY | +---------------------------------+ | 2021-05-11 | +---------------------------------+
BONUS:il ADDTIME()
Funzione
Ho detto che questo articolo contiene 8 modi per aggiungere giorni a una data, ma ecco un paio di funzioni bonus! Forse avrei dovuto chiamare questo articolo "10 modi per aggiungere giorni a un valore datetime".
Ad ogni modo, puoi usare ADDTIME()
funzione per aggiungere un numero di giorni a un'espressione datetime.
Esempio:
SELECT ADDTIME('2021-05-01 10:30:45', '1 0:0:0');
Risultato:
+-------------------------------------------+ | ADDTIME('2021-05-01 10:30:45', '1 0:0:0') | +-------------------------------------------+ | 2021-05-02 10:30:45 | +-------------------------------------------+
Puoi anche modificare le altre unità di tempo, come ore, minuti, secondi, ecc.
In alternativa puoi cambiarlo e utilizzare SUBTIME()
con un valore negativo se lo desideri:
SELECT SUBTIME('2021-05-01 10:30:45', '-1 0:0:0');
Risultato:
+--------------------------------------------+ | SUBTIME('2021-05-01 10:30:45', '-1 0:0:0') | +--------------------------------------------+ | 2021-05-02 10:30:45 | +--------------------------------------------+
Altre unità di data e ora
Gli esempi precedenti aggiungono un numero di giorni alla data, ma possiamo utilizzare le stesse tecniche per aggiungere qualsiasi unità di data/ora. Usiamo DAY
come unità di data/ora, ma come accennato, potrebbe essere altrettanto facilmente MONTH
, YEAR
, TIME
, ecc, nonché qualsiasi unità composta.
Vedere Unità di data e ora di MariaDB per un elenco completo delle unità di data/ora che possono essere utilizzate con le funzioni e gli operatori di cui sopra.