【问题标题】:Mysql: Get all records which are insert before certain hourMysql:获取在特定时间之前插入的所有记录
【发布时间】:2013-07-19 11:10:06
【问题描述】:

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

假设 1 小时。我需要表中在 1 小时之前插入的所有记录。

我在表中有“createdon”列。

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

  • 身份证
  • 姓名
  • Created_on(默认设置时间戳)

有一些记录,如下:

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

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

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

【问题讨论】:

  • 。 .你真的需要更好地解释你在寻找什么。能否提供样本数据和预期结果?

标签: mysql sql datetime


【解决方案1】:

在 SQL 上试试这个

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

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

【讨论】:

  • 但是mysql中没有名为DATEPART的函数
  • @Sachin 同意 Abhinav
  • @Abhinav 你可以在 mySql 中使用hour 函数。这里描述tutorialspoint.com/mysql/…
【解决方案2】:

对此的正确查询如下:

选择 * 从表名 其中 created_on

感谢大家的大力帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    相关资源
    最近更新 更多