2010-08-31 72 views
1

在日期列(login_time)的mysql表中,我需要获取mysql中的日期差异

的最近30天(最近60天)的登录信息。

有没有办法做到这一点?

谢谢。

+0

预期产出的例子?表格中的其他列也是如此,请... – 2010-08-31 20:45:37

+0

我正在尝试使用login_time列在过去60天内记录最近30天内的用户。 – Sharpeye 2010-08-31 21:04:37

回答

4

这会给你从表中的行,其中login_time是内过去60天:

SELECT * FROM table WHERE login_time >= SUBDATE(CURDATE(),INTERVAL 60 DAY) 

同样用30天。

+0

请注意addDate(3x'D')和60'DAY'(不是“dayS”) – Piskvor 2010-08-31 20:49:54

+0

谢谢,它会给我登录用户的最近30天的login_time吗? – Sharpeye 2010-08-31 21:04:14

+1

不好,因为查询优化器不能使用login_time的索引,并且需要每条记录的算术运算。更好地应用adddate到curdate() – burnall 2010-09-01 07:17:46