mysql昨天具有特定时间戳的日期

时间:2016-04-25 10:24:57

标签: mysql date datetime time timestamp

我处于这样一种情况,我需要查询数据库以从昨天的时间戳中获取记录,今天的例子是25,所以子句应该是这样的:

STR_TO_DATE(created_date,'%Y-%m-%d') BETWEEN '2016-04-24 23:00:00' AND CURRENT_TIMESTAMP

我可以获取上一个日期,但无法将其设置为23:00:00,任何想法都可以吗?

我试过了:

SELECT 
  DATE_ADD(CURDATE(), INTERVAL - 1 DAY)
  , CURRENT_TIMESTAMP
  , HOUR(CURRENT_TIMESTAMP)
  , DATE_ADD(
    CURDATE() INTERVAL - ((HOUR(CURRENT_TIMESTAMP) + 1)) HOUR
  )

但它给出了一个错误,我试图从当前时间戳中减去今天的HOURS +1。

1 个答案:

答案 0 :(得分:1)

使用

curdate() - interval 1 hour

由于curdate()为您提供当前日期,没有时间。从中减去一小时,你就会在昨天23:00得到。