MySQL의 마지막 로그인 시간을 datetime
-type filed로 저장하고 있습니다. 사용자가 로그인 할 때 마지막 로그인 시간과 현재 시간 (사용하는 시간)의 차이를 얻고 싶습니다 NOW()
.
어떻게 계산할 수 있습니까?
답변
TIMESTAMPDIFF
MySQL 기능을 사용하십시오 . 예를 들어 다음을 사용할 수 있습니다.
SELECT TIMESTAMPDIFF(SECOND, '2012-06-06 13:13:55', '2012-06-06 15:20:18')
귀하의 경우, TIMSTAMPDIFF
기능 의 세 번째 매개 변수 는 현재 로그인 시간 ( NOW()
)입니다. 두 번째 매개 변수는 데이터베이스에 이미있는 마지막 로그인 시간입니다.
답변
논리에 관한 나의 2 센트 :
구문은 “old date”-: “new date”입니다.
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
답변
시작 날짜와 종료 날짜 시간이 다른 날인 경우 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 <datetime2
SELECT TIMEDIFF("2019-02-19 23:45:00","2019-02-20 23:46:00")
제공 : -24 : 01 : 00