Per sottrarre 30 giorni dall’attuale datetime, prima dobbiamo ottenere le informazioni sulla data attuale, poi usare il metodo now() di MySQL. Il metodo now() dà la data attuale.
Il metodo da usare per questo è DATE_SUB() di MySQL. Ecco la sintassi per sottrarre 30 giorni dalla data attuale.
La sintassi è la seguente –
DATE_SUB(NOW(),INTERVAL 30 DAY);
La sintassi di cui sopra calcola prima la data attuale e nel passo successivo sottrae 30 giorni. Vediamo prima la query per ottenere la data attuale –
mysql> select now();
Ecco l’output –
+---------------------+| now() |+---------------------+| 2018-11-23 16:38:43 |+---------------------+1 row in set (0.00 sec)
Ora, usiamo il metodo date_sub() per sottrarre 30 giorni. La query è la seguente –
mysql> select date_sub(now(),interval 30 day);
Ecco l’output che mostra una data dopo aver sottratto 30 giorni –
+---------------------------------+| date_sub(now(),interval 30 day) |+---------------------------------+| 2018-10-24 16:38:50 |+---------------------------------+1 row in set (0.00 sec)
Per ottenere solo il valore della data nel risultato, potete usare curdate() invece di now(). Ecco la demo di curdate().
La query è la seguente –
mysql> select date_sub(curdate(),interval 30 day);
Il seguente è l’output –
+-------------------------------------+| date_sub(curdate(),interval 30 day) |+-------------------------------------+| 2018-10-24 |+-------------------------------------+1 row in set (0.00 sec)