Вычтите месяц и день mysql - PullRequest
       6

Вычтите месяц и день mysql

40 голосов
/ 27 сентября 2011

Мне нужно вычесть 1 месяц и 4 дня с помощью mysql, я увидел команду DATE_ADD (NOW (), - 1 MONTH) идеально подходит для 1 месяца, но для 1 месяца и 4 дня, использование 31 дня недопустимо для каждого месяца, который некоторые приносят 30, 29,28. Не могу добавить 31 + 4, 30 + 4 и т. Д.

Ответы [ 4 ]

78 голосов
/ 27 сентября 2011

с использованием DATE_SUB [документы] как:

DATE_SUB((DATE_SUB(curdate(), INTERVAL 1 MONTH)), INTERVAL 4 DAY)
14 голосов
/ 27 сентября 2011
SELECT DATE_ADD(DATE_ADD(NOW(),INTERVAL -1 MONTH), INTERVAL -4 DAY)
3 голосов
/ 05 июня 2018

SELECT CURRENT_TIMESTAMP + INTERVAL - 1 MONTH + INTERVAL - 4 DAY;
или
SELECT CURRENT_DATE + INTERVAL - 1 MONTH + INTERVAL - 4 DAY;

2 голосов
/ 04 января 2019

Будьте проще:

SELECT CURDATE() - INTERVAL 1 MONTH - INTERVAL 4 DAY;

или

SELECT '2014-03-27' - INTERVAL 1 MONTH - INTERVAL 4 DAY;

или, если вы хотите сохранить текущее время:

SELECT NOW() - INTERVAL 1 MONTH - INTERVAL 4 DAY;

(протестировано на MySQL 5.1.73 и новее)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...