dongyiba8082 2018-09-11 18:56
浏览 390
已采纳

MySQL时间戳从创建时起30天有效期

What I am trying to do here is adding an 30 DAYS to the timestamp when the session key was created.

SELECT * FROM `sessions` 
WHERE (`timestamp` + INTERVAL 30 DAY) <= UTC_TIMESTAMP()

And then checking it to the current time.


But this doesn't work because the session was created just a few days ago. So the timestamp is way larger than UTC_TIMESTAMP (the current time).

I can ADD another condition AND (timestamp + INTERVAL 30 DAY) >= UTC_TIMESTAMP(), but I would have to calculate the interval again.


Is there a more efficient way to have this done?

  • 写回答

3条回答 默认 最新

  • drg17404 2018-09-11 19:30
    关注

    Try this instead:

    `timestamp` >= DATE_SUB(NOW(), INTERVAL 30 DAY)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题