Aby odjąć 30 dni od aktualnego datetime, najpierw musimy uzyskać informację o aktualnym czasie daty, a następnie użyć metody now() z MySQL. Metoda now() podaje aktualny czas daty.
Metodą, której należy użyć do tego celu jest DATE_SUB() z MySQL. Oto składnia odejmowania 30 dni od aktualnej daty.
Składnia jest następująca –
DATE_SUB(NOW(),INTERVAL 30 DAY);
Powyższa składnia najpierw oblicza aktualną datę, a w następnym kroku odejmuje 30 dni. Najpierw wykonajmy zapytanie, aby uzyskać aktualny czas –
mysql> select now();
Oto wynik –
+---------------------+| now() |+---------------------+| 2018-11-23 16:38:43 |+---------------------+1 row in set (0.00 sec)
Teraz użyjmy metody date_sub(), aby odjąć 30 dni. Zapytanie jest następujące –
mysql> select date_sub(now(),interval 30 day);
Tutaj jest wyjście wyświetlające datę po odjęciu 30 dni –
+---------------------------------+| date_sub(now(),interval 30 day) |+---------------------------------+| 2018-10-24 16:38:50 |+---------------------------------+1 row in set (0.00 sec)
Aby uzyskać tylko wartość daty w wyniku, możesz użyć curdate() zamiast now(). Poniżej znajduje się demo funkcji curdate().
Kwerenda jest następująca –
mysql> select date_sub(curdate(),interval 30 day);
Poniżej przedstawiono dane wyjściowe –
+-------------------------------------+| date_sub(curdate(),interval 30 day) |+-------------------------------------+| 2018-10-24 |+-------------------------------------+1 row in set (0.00 sec)
.