MySQL에서 unix_timestamp에 가장 적합한 데이터 유형은 정수입니다. 정수 데이터 유형은 다음과 같습니다.
int(11);
정수 데이터 유형은 (> ,<=) 및 인덱싱과 같은 조건 검사에 유용합니다. unix_timestamp의 반환 유형은 정수입니다.
그러나 datetime을 타임스탬프로 변환할 때 UNIX Timestamp로 얻는 결과를 살펴보겠습니다.
위의 개념을 이해하기 위해 먼저 테이블을 생성해 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.
mysql> create table UnixTime -> ( -> DueTime datetime -> ); Query OK, 0 rows affected (0.55 sec)
insert 명령어를 사용하여 날짜 형식으로 레코드를 삽입합니다. 쿼리는 다음과 같습니다
mysql> insert into UnixTime values(now()); Query OK, 1 row affected (0.15 sec) mysql> insert into UnixTime values('2010-10-14'); Query OK, 1 row affected (0.15 sec) mysql> insert into UnixTime values('2020-09-24'); Query OK, 1 row affected (0.15 sec)
이제 select 명령을 사용하여 테이블의 모든 레코드를 표시해 보겠습니다. 쿼리는 다음과 같습니다
mysql> select *from UnixTime;
다음은 출력입니다.
+---------------------+ | DueTime | +---------------------+ | 2018-12-19 10:07:11 | | 2010-10-14 00:00:00 | | 2020-09-24 00:00:00 | +---------------------+ 3 rows in set (0.00 sec)
datetime을 UNIX 타임스탬프로 변환하는 쿼리를 살펴보겠습니다.
mysql> select unix_timestamp(DueTime) as Output from UnixTime;
다음은 출력입니다.
+------------+ | Output | +------------+ | 1545194231 | | 1286994600 | | 1600885800 | +------------+ 3 rows in set (0.00 sec)