SQL datetime vs timestamp

Jae Hoon Shin, 신재훈, Noah·2020년 12월 17일
0
post-thumbnail

DATETIME 과 TIMESTAMP 차이점

DATE

  • yyyy-mm-dd

DATETIME

  • yyyy-mm-dd hh:mm:ss
  • '1000-01-01 00:00:00' to '9999-12-31 23:59:59'
  • 문자형으로 저장
  • 8byte
  • 수정 시 날짜 시간 직접 입력
  • 글 등록 예약 날짜

TIMESTAMP

  • yyyy-mm-dd hh:mm:ss
  • '1970-01-01 00:00:01' to '2038-01-19 03:14:07' (UTC : 국제 표준 시)
  • 숫자형으로 저장
  • 4byte
  • current_timestamp 사용시 자동으로 입력
  • 자동으로 수정날짜를 저장할 수 있다.

DATETIME 과 TIMESTAMP 를 동시에 넣으면 어떻게 되나
시간은 같다.

하지만!!

TIME ZONE 을 바꾸면!!

WHY?

timestamp는 time_zone의 의존하기 때문

그렇다면 Datetime만 사용하면 되는거 아닌가?

NO!

글로벌 서비스를 하면 여러 지역에 DB를 Clustering 해야 한다.

경우에 따라 UTC 지원 가능한 timestamp를 사용하는 것이 더 좋아보인다.

또한

Datetime
1000-01-01 00:00:00부터 9999-12-31 23:59:59까지 지원

Timestamp
1970-01-01 00:00:01부터 2038-01-19 03:14:07까지 지원

Index가 더 빠르게 생성된다.

참고 자료

profile
🇰🇷🇺🇸 #Back-End Engineer

0개의 댓글