Vähentääksemme 30 päivää nykyisestä datetime-ajasta, meidän on ensin saatava tiedot nykyisestä päivämääräajasta ja käytettävä sitten MySQL:n now()-metodia. Now() antaa nykyisen päivämäärän ajan.
Tässä käytettävä metodi on MySQL:n DATE_SUB(). Tässä on syntaksi, jolla vähennetään 30 päivää nykyisestä päivämääräajasta.
Syntaksi on seuraava –
DATE_SUB(NOW(),INTERVAL 30 DAY);
Yllä oleva syntaksi laskee ensin nykyisen päivämääräajan ja seuraavassa vaiheessa vähentää 30 päivää. Tarkastellaan ensin kyselyä, jolla saadaan nykyinen päivämäärä –
mysql> select now();
Tässä on tuloste –
+---------------------+| now() |+---------------------+| 2018-11-23 16:38:43 |+---------------------+1 row in set (0.00 sec)
Käytetään nyt date_sub()-metodia 30 päivän vähentämiseen. Kysely on seuraava –
mysql> select date_sub(now(),interval 30 day);
Tässä on tuloste, joka näyttää päivämäärän 30 päivän vähentämisen jälkeen –
+---------------------------------+| date_sub(now(),interval 30 day) |+---------------------------------+| 2018-10-24 16:38:50 |+---------------------------------+1 row in set (0.00 sec)
Voidaksesi saada tuloksessa vain päivämäärän arvon, voit käyttää curdate():a now():n sijasta. Tässä on curdate():n demo.
Kysely on seuraava –
mysql> select date_sub(curdate(),interval 30 day);
Tulos on seuraava –
+-------------------------------------+| date_sub(curdate(),interval 30 day) |+-------------------------------------+| 2018-10-24 |+-------------------------------------+1 row in set (0.00 sec)
.