明智地显示数据组

时间:2018-09-17 12:28:13

标签: mysql

在mysql数据库中,我的表具有以下条目:

----------------------------------------
user_id        date           subject
----------------------------------------
id8771       2018-06-25      English
id8772       2018-06-25      French
id8773       2018-06-25      spanish 
id8774       2018-06-24      English
id8775       2018-06-24      English
id8776       2018-06-24      Spanish
id8777       2018-06-24      Hindi
id8778       2018-06-22      Sanskrit
id8779       2018-06-22      French
id8780       2018-06-19      Sanskrit
id8781       2018-06-19      English
id8781       2018-06-19      English
id8781       2018-06-19      Sanskrit
id8781       2018-06-19      Spanish

在我的应用程序中,我想按日期显示数据。例如显示过去30天的数据。 就像我要显示过去2天的数据一样,应该是这样:

----------------------------------------
user_id        date           subject
----------------------------------------
id8771       2018-06-25      English
id8772       2018-06-25      French
id8773       2018-06-25      spanish 
id8774       2018-06-24      English
id8775       2018-06-24      English
id8776       2018-06-24      Spanish
id8777       2018-06-24      Hindi

mysql中是否有这样的查询?

3 个答案:

答案 0 :(得分:2)

使用date_sub(now(),间隔2天)查找前两天的日期

select * from tablename where date>=date_sub(now(), interval 2 day)

答案 1 :(得分:1)

日期大于两天前的所有记录:

SELECT * FROM `table` WHERE `date` > DATE_SUB(NOW(), INTERVAL 2 DAY);

答案 2 :(得分:1)

您可以使用

选择值
SELECT ... WHERE date BETWEEN DATE_SUB(NOW(), INTERVAL 2 DAY) AND NOW()

通常,> =与BETWEEN相同,但是对于理解和格式化更为清晰