我需要用mysql减去1个月和4天,我看到了命令
DATE_ADD (NOW (), - 1 MONTH)
完美1个月,但1个月和4天,使用31天无效,每个月有些带30,29,28。我不能添加31 + 4,30 + 4等< / p>
答案 0 :(得分:78)
使用DATE_SUB
[docs]
喜欢:
DATE_SUB((DATE_SUB(curdate(), INTERVAL 1 MONTH)), INTERVAL 4 DAY)
答案 1 :(得分:14)
SELECT DATE_ADD(DATE_ADD(NOW(),INTERVAL -1 MONTH), INTERVAL -4 DAY)
答案 2 :(得分:3)
SELECT CURRENT_TIMESTAMP + INTERVAL - 1 MONTH + INTERVAL - 4 DAY;
或
SELECT CURRENT_DATE + INTERVAL - 1 MONTH + INTERVAL - 4 DAY;
答案 3 :(得分:2)
保持简单:
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和更高版本上测试)