我将最后一次登录时间存储在MySQL datetime
- 类型字段中。当用户登录时,我希望获得上次登录时间和当前时间之间的差异(我使用NOW()
获得)。
我该如何计算?
答案 0 :(得分:256)
USE TIMESTAMPDIFF
MySQL功能。例如,您可以使用:
SELECT TIMESTAMPDIFF(SECOND, '2012-06-06 13:13:55', '2012-06-06 15:20:18')
在您的情况下,TIMSTAMPDIFF
函数的第三个参数将是当前登录时间(NOW()
)。第二个参数是最后一次登录时间,它已在数据库中。
答案 1 :(得分:0)
我对逻辑的两分钱
语法是“旧日期”-:“新日期”,所以:
SELECT TIMESTAMPDIFF(SECOND, '2018-11-15 15:00:00', '2018-11-15 15:00:30')
给30岁,
SELECT TIMESTAMPDIFF(SECOND, '2018-11-15 15:00:55', '2018-11-15 15:00:15')
给出: -40
答案 2 :(得分:0)
如果开始日期和结束日期在不同的日期,请使用TIMEDIFF。
SELECT TIMEDIFF(datetime1,datetime2)
如果datetime1> datetime2那么
SELECT TIMEDIFF("2019-02-20 23:46:00","2019-02-19 23:45:00")
给予:24:01:00
和datetime1 给予:-24:01:00 SELECT TIMEDIFF("2019-02-19 23:45:00","2019-02-20 23:46:00")