为了计算给定日期的预计销售额,我需要查询给定日期的最近六周的数据。例如,如果我希望星期五的预计销售额,则需要查询最近六个星期五的数据。MySQL - 查询最近六周的数据
我假设有一种方法可以在查询中做到这一点,只是不确定如何。任何帮助或见解将不胜感激,一如既往。
在此先感谢。
为了计算给定日期的预计销售额,我需要查询给定日期的最近六周的数据。例如,如果我希望星期五的预计销售额,则需要查询最近六个星期五的数据。MySQL - 查询最近六周的数据
我假设有一种方法可以在查询中做到这一点,只是不确定如何。任何帮助或见解将不胜感激,一如既往。
在此先感谢。
最简单的方法是使用限制。
SELECT date, sales FROM yourtable WHERE DAYOFWEEK(date)=6
ORDER BY date DESC LIMIT 6;
编辑:为了得到这相对于今天,只需添加CURDATE()
SELECT date, sales FROM yourtable WHERE DAYOFWEEK(date)=DAYOFWEEK(CURDATE())
ORDER BY date DESC LIMIT 6;
Select * From table Where date_field > DATE_ADD(now(),INTERVAL -42 DAY)
这就是你需要做的事情。
我刚刚看到你只想查询每周的某一天。给我一点时间,我会更新这个。
没关系,我不打算编辑这个。鲍比为你解答。您只需根据需要通过脚本将变量放置在那里。 +1鲍比。
您可以使用不同的MySQL日期和时间函数的组合来实现这一点。您的查询可能是这个样子:
SELECT fields FROM table WHERE DAYOFWEEK(table.date) = DAYOFWEEK(CURDATE()) ORDER BY table.date DESC LIMIT 6
当然你也可以用你正在试图预测之日起代替CURDATE()
。
您在每次销售时存储什么样的日期/日期时间信息? – scibuff 2012-02-24 20:25:26
销售以DATE格式存储。例如,如果我想要今天的预计销售额,我需要2012-02-17,2012-02-10等。 – Brett 2012-02-24 20:28:10