Mysql:获取在特定时间之前插入的所有记录

时间:2013-07-19 11:10:06

标签: mysql sql datetime

我需要一个查询,从中我从表中获取行,这些行在特定时间之前插入。

比方说1小时。我需要在1小时之前插入的表中的所有记录。

我在表格中有“createdon”列。

例如,我有一个表foo,列如下:

  • ID
  • 名称
  • Created_on(将时间戳设置为默认值)

有一些记录,如下:

第一记录   - 1  - 一个   - 2013-07-19 04:12:00

第二次记录   - 2   - B.   - 2013-07-19 02:00:00

如果当前时间是下午5:00,则查询应仅返回第二条记录。不是第一次记录,因为它是在一小时内创建的。

2 个答案:

答案 0 :(得分:2)

尝试使用SQL

select  * from TableName where DateColumn > (DATEPART(hh,GETDATE())-1)

您可以将1替换为您想要的任何值。

答案 1 :(得分:2)

对此的正确查询如下:

选择* 来自table_name 其中created_on< date_sub(NOW(),间隔1小时);

谢谢大家的帮助。