如何从MySQL的时间戳中查找上个月的记录?

时间:2017-02-06 10:12:17

标签: php mysql

在我的数据库表中,timestamp列数据类型是long文本,如1486335600。

如何编写mysql select语句来检索上个月的信息?

SELECT `timestamp` FROM `daily_deals`

3 个答案:

答案 0 :(得分:0)

您应该尝试以下查询来检索上个月的信息。

SELECT `timestamp` FROM `daily_deals` WHERE date_created BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH) AND CURRENT_DATE();

答案 1 :(得分:0)

您的时间戳记保存为unix时间戳,您可以使用FROM_UNIXTIME()将其转换为日期/时间格式:

select from_unixtime( 1486335600 )

上个月的信息将是这样的:

select `timestamp`
from `daily_deals`
where
  `timestamp` >= unix_timestamp( current_date - interval 1 month )

但这取决于您的要求(例如,您现在可能需要整个1月份的数据,我们现在是2月份,如果是这种情况,我们需要对其中的条件进行一些处理)

答案 2 :(得分:0)

from_unixtim()此功能会将您的值转换为 2017-02-06 05:30:00 之类的日期,以便您可以在条件< / p>

     SELECT `timestamp` FROM `daily_deals` where  
FROM_UNIXTIME(timestamp) BETWEEN 2017-01-01 and 2017-01-31

使用此功能可以获取任意两个日期之间的数据