我的日期字段 ( artists.onlineDate
) 是 yyy-mm-dd hh:mm:ss
现在我得到了:
-- Today
SELECT * FROM artists WHERE DATE(artists.onlineDate) = CURDATE()
-- Current Week
SELECT * FROM artists WHERE WEEK(artists.onlineDate, 3) = WEEK(CURDATE(), 3)
-- Current Month
SELECT * FROM artists WHERE MONTH(artists.onlineDate) = MONTH(CURDATE())
-- Current Year
SELECT * FROM artists WHERE YEAR(artists.onlineDate) = YEAR(CURDATE())
但我需要的是准确的:昨天、上周、上个月、去年
我试图解释。如果我们有星期三,而我使用SELECT * FROM artists WHERE DATE(artists.onlineDate) = CURDATE()
,那么我会得到星期一到星期三。
我想要上周的星期一到星期日。日历周前。
月份和年份也是如此。
我SUB_DATE
认为这不是正确的方法。
有什么建议么?