MariaDB fornisce diversi modi per eseguire l'aritmetica sulle date. Ciò include l'aggiunta o la sottrazione di un giorno (o più giorni) da una determinata data.
Ecco un esempio di sottrazione di un giorno da una data in MariaDB.
Il SUBDATE()
Funzione
Il SUBDATE()
la funzione permette di sottrarre un certo numero di giorni da una data.
Il modo più semplice per farlo è fornire la data, seguita dal numero di giorni che desideri sottrarre.
Esempio:
SELECT SUBDATE('2021-05-21', 1);
Risultato:
+--------------------------+ | SUBDATE('2021-05-21', 1) | +--------------------------+ | 2021-05-20 | +--------------------------+
Più giorni
Se devi sottrarre più di un giorno, usa quel numero invece di 1
.
SELECT SUBDATE('2021-05-01', 30);
Risultato:
+---------------------------+ | SUBDATE('2021-05-01', 30) | +---------------------------+ | 2021-04-01 | +---------------------------+
In questo caso abbiamo restituito la data, meno 30 giorni. Ciò ha riportato anche la data al mese precedente.
Una sintassi più dettagliata
Il SUBDATE()
La funzione ha anche una sintassi più dettagliata, in cui è possibile specificare l'unità da sottrarre dalla data. Ad esempio, puoi specificare giorni, settimane, mesi, anni, ecc.
SELECT SUBDATE('2021-05-01', INTERVAL 1 DAY);
Risultato:
+---------------------------------------+ | SUBDATE('2021-05-01', INTERVAL 1 DAY) | +---------------------------------------+ | 2021-04-30 | +---------------------------------------+
Nota che quando si sottraggono più giorni, il DAY
la parola chiave rimane non plurale:
SELECT SUBDATE('2021-05-01', INTERVAL 10 DAY);
Risultato:
+----------------------------------------+ | SUBDATE('2021-05-01', INTERVAL 10 DAY) | +----------------------------------------+ | 2021-04-21 | +----------------------------------------+
L'operatore di sottrazione (-
)
Un altro modo per sottrarre giorni da una data consiste nell'utilizzare l'operatore di sottrazione (-
), noto anche come operatore meno.
Esempio:
SELECT '2021-05-01' - INTERVAL 90 DAY;
Risultato:
+--------------------------------+ | '2021-05-01' - INTERVAL 90 DAY | +--------------------------------+ | 2021-01-31 | +--------------------------------+
L'operatore di addizione (+
)
In alternativa puoi utilizzare l'operatore di addizione (+
) insieme a un importo negativo.
Esempio:
SELECT '2021-05-01' + INTERVAL -90 DAY;
Risultato:
+---------------------------------+ | '2021-05-01' + INTERVAL -90 DAY | +---------------------------------+ | 2021-01-31 | +---------------------------------+
Altri modi per sottrarre i giorni dalle date
Ecco alcuni altri approcci che potresti utilizzare per sottrarre uno o più giorni da una data:
- Il
DATE_SUB()
funzione (ilSUBDATE()
la funzione utilizzata nell'esempio sopra è sinonimo diDATE_SUB()
se utilizzato con la stessa sintassi). - Il
DATE_ADD()
funzione (fornire un importo negativo sottrarrà tale importo dalla data). - Il
ADDDATE()
funzione (fornire un importo negativo sottrarrà tale importo dalla data).