我有一个mysql表,其中有一个名为'timecreated'的列,当它被插入时,其值为NOW()。基本的mysql问题 - 如何按时间搜索?
如何编写一个MYSQL语句来获取从过去一分钟插入的行?
这不是工作:
SELECT * FROM mytable
WHERE timecreated
> '(NOW() - 60)' ORDER BY ID DESC LIMIT 0,30
我有一个mysql表,其中有一个名为'timecreated'的列,当它被插入时,其值为NOW()。基本的mysql问题 - 如何按时间搜索?
如何编写一个MYSQL语句来获取从过去一分钟插入的行?
这不是工作:
SELECT * FROM mytable
WHERE timecreated
> '(NOW() - 60)' ORDER BY ID DESC LIMIT 0,30
使用DATE_SUB():
SELECT * FROM mytable
WHERE timecreated > DATE_SUB(NOW(), INTERVAL 1 MINUTE)
ORDER BY id DESC LIMIT 0 , 30
或者您可以像表达式那样做:
SELECT * FROM mytable
WHERE timecreated > NOW() - INTERVAL 60 SECOND
ORDER BY id DESC LIMIT 0 , 30
您可以:
SELECT * from mytable where timecreated > SUBTIME(NOW() , '01:00:00')
让所有的行,其中timecreated现在> - 2小时
,或者你可以
SELECT * from mytable where timecreated > '2009-10-03 08:39:00')
如果你从一个特定的时间要
。
请发表您的表格架构 – 2009-10-03 21:45:33