MySQL 选择过去 5 天的所有数据

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/4519077/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-31 18:05:54  来源:igfitidea点击:

Select all data from the last 5 days

sqlmysql

提问by Kioko Kiaza

In mysql I need to obtain all the last 5 days records. So if I have

在 mysql 中,我需要获取所有过去 5 天的记录。所以如果我有

Name       date
aaaa      20/11/2010
dddd*      24/11/2010*
bbbb      22/11/2010
cccc      23/11/2010
eeee*     25/11/2010*
ffff*      26/11/2010*

I need only the last 5 days records.

我只需要最近 5 天的记录。

I tried something like:

我试过类似的东西:

SELECT name,date 
from Lineas
WHERE date >= DATE_SUB(CURDATE(), INTERVAL 5 DAY)
ORDER BY date DESC

but it isn′t working....

但它不起作用......

回答by CSkau

If the problem is "records from the future" then you simply need to restrain your results a bit more than you've already done:

如果问题是“来自未来的记录”,那么你只需要比你已经做的更多地限制你的结果:

SELECT name,date 
from Lineas
WHERE date >= DATE_SUB(CURDATE(), INTERVAL 5 DAY) AND date <= CURDATE()
ORDER BY date DESC

回答by Adriaan Stander

Have you tried between

你有没有试过

SELECT  name,
        date  
from    Lineas 
WHERE   date BETWEEN DATE_SUB(CURDATE(), INTERVAL 5 DAY) AND CURDATE()
ORDER BY date DESC