查询以限制每天的请求数

时间:2013-05-28 18:06:50

标签: mysql

我试图限制用户每天只执行5个请求。为此,我使用以下查询计算当天已执行的请求数:

SELECT COUNT(*) FROM table_name WHERE date_field >= CURDATE()

这给了我几天前已经执行过的请求。我只需要在今天课程中执行的请求数量。有什么好主意吗?

2 个答案:

答案 0 :(得分:2)

SELECT COUNT(*) FROM table_name WHERE date_field >= CURDATE()
如果date_field是日期数据类型,

...将返回date_field大于或等于今天的行数。也就是说,确保时间不是一个组件,但它确实无法返回“之前已经执行过的请求”,除非date_field列中存储的值存在错误。

https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

答案 1 :(得分:1)

尝试:

SELECT COUNT(*) FROM table_name WHERE date(date_field) = CURDATE()

假设date_field是时间戳/日期时间字段,date()将仅提取日期部分并根据当前日期对其进行评估。您可以在 MySQL's Documentation

上阅读更多相关信息