我正在尝试此查询
SELECT *
FROM flexible_products
WHERE YEAR(updated_at) = YEAR(DATE_SUB(CURDATE(), INTERVAL -1 MONTH))
AND MONTH(updated_at) = MONTH(DATE_SUB(CURDATE(), INTERVAL -1 MONTH))
我目前的工作。我想要做的是获取上个月的所有行,
例如,我们今天在2017年7月4日,我想从1月到6月获取行,这不是上述查询的结果。
MySQL中最好的方法是什么?
答案 0 :(得分:2)
以下查询将返回当前年度1月1日当天或之后更新的所有记录,但大致在当月的第一个月之前。
pip install --upgrade mock
pip install --upgrade distribute
按照以下链接进行正在运行的演示:
答案 1 :(得分:0)
你也应该尝试这个,或者你可以在任何两个日期之间获得数据。
SELECT * FROM flexible_products WHERE updated_at BETWEEN DATE_ADD(DATE_FORMAT(NOW(),'%Y-%m-01'),INTERVAL -3 MONTH)AND NOW()
日期输出为: -
DATE_ADD(DATE_FORMAT(NOW(),'%Y-%m-01'),INTERVAL -3 MONTH)// 2017-04-01
NOW()// 2017-07-04 11:17:38
答案 2 :(得分:0)
有点短。不确定是否也更快
import()
答案 3 :(得分:-1)
如果我理解你,你可以这样做
WHERE updated_at <= '2017-07-01' AND updated_at >= '2017-01-01'