选择周一至周日当前周的数据

时间:2016-08-17 02:39:14

标签: mysql sql select

我查询选择间隔一周的数据(< 7从当天开始)

SELECT order_date 
FROM sales 
WHERE order_date >= DATE_SUB(CURDATE(), INTERVAL 1 WEEK);

此外,我想在星期一到星期日的当周选择表中的数据。获取该数据的正确where条件如何?

2 个答案:

答案 0 :(得分:0)

您可以使用dayofweek()

select t.*
from t
where t.date >= date_sub(curdate(), interval weekday(curdate()) day) and
      t.date <= curdate()

weekday()在星期一开始计算,值为0.如果您有将来的日期:

select t.*
from t
where t.date >= date_sub(curdate(), interval weekday(curdate()) day) and
      t.date <= date_sub(curdate(), interval weekday(curdate()) - 7 day)

答案 1 :(得分:-1)

SELECT * FROM jokes WHERE date > DATE_SUB(NOW(), INTERVAL 1 WEEK) ORDER BY score DESC;

这将从今天开始选择过去一周的数据。