Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 두 타임스탬프의 차이를 초 단위로 확인하시겠습니까?

<시간/>

두 타임스탬프를 초 단위로 구분하려면 MySQL에서 내장 함수 TIME_TO_SEC() 및 TIMEDIFF()를 사용하십시오. 구문은 다음과 같습니다 -

select time_to_sec(timediff(yourCoulnName1,yourCoulnName2)) as anyVariableName from yourTableName;

위의 개념을 이해하기 위해 먼저 테이블을 생성해 보겠습니다. 테이블 생성 쿼리입니다.

mysql> create table TimeToSecond
   −> (
   −> MyTime timestamp,
   −> YourTime timestamp
   −> );
Query OK, 0 rows affected (0.48 sec)

이제 테이블에 일부 날짜/시간 값을 삽입할 수 있습니다. 쿼리는 다음과 같습니다 -

mysql> insert into TimeToSecond values('2016-05-10 10:02:00','2016-05-10 10:00:00');
Query OK, 1 row affected (0.15 sec)

mysql> insert into TimeToSecond values('2016-05-10 10:06:00','2016-05-10 10:03:00');
Query OK, 1 row affected (0.24 sec)

mysql> insert into TimeToSecond values('2018-05-10 11:00:00','2018-05-10 10:00:00');
Query OK, 1 row affected (0.08 sec)

삽입 후 select 문을 사용하여 테이블에 몇 개의 레코드가 있는지 확인할 수 있습니다. 모든 레코드를 표시하는 쿼리는 다음과 같습니다. -

mysql> select *from TimeToSecond;

다음은 출력입니다 -

+---------------------+---------------------+
| MyTime              | YourTime            |
+---------------------+---------------------+
| 2016-05-10 10:02:00 | 2016-05-10 10:00:00 |
| 2016-05-10 10:06:00 | 2016-05-10 10:03:00 |
| 2018-05-10 11:00:00 | 2018-05-10 10:00:00 |
+---------------------+---------------------+
3 rows in set (0.00 sec)

이제 위에서 논의한 구문을 사용하여 두 타임스탬프 간의 차이를 초 단위로 알아보겠습니다. 쿼리는 다음과 같습니다 -

mysql> select time_to_sec(timediff(MyTime,YourTime)) as DifferenceInSeconds from TimeToSecond;

다음은 출력입니다 -

+---------------------+
| DifferenceInSeconds |
+---------------------+
|                 120 |
|                 180 |
|                3600 |
+---------------------+
3 rows in set (0.00 sec)