
https://nesoy.github.io/articles/2020-02/mysql-datetime-timestamp
DATETIME : 입력된 날짜와 시간 그대로 데이터를 저장하지만
TIMESTAMP : time_zone 시스템 변수로 값을 지정한다.
TIMESTAMP는 데이터 입출력시 time_zone 시스템 변수 값을 체크해 그 기반으로 변환하여 처리한다.
한마디로 가장 큰 차이점은 DATETIME은 일정하며 TIMESTAMP는 time_zone 설정의 영향을 받습니다.
DATETIME과 TIMESTAMP는 모두 날짜와 시간을 저장하는 데 사용되는 MySQL의 데이터 타입입니다. 그러나 이 둘 사이에는 몇 가지 중요한 차이점이 있습니다.
저장 형식
저장 범위
시간대 처리
기본값
스토리지 크기
일반적으로, 애플리케이션에서 시간대를 직접 처리하거나 더 넓은 범위의 날짜를 다뤄야 하는 경우에는 DATETIME을 사용하고, 시간대를 자동으로 처리하고 싶거나 스토리지 공간을 절약하고 싶은 경우에는 TIMESTAMP를 사용합니다.
프로젝트의 요구사항과 데이터의 특성에 따라 적절한 타입을 선택하면 됩니다. 대부분의 경우 DATETIME으로 충분하지만, 시간대 처리나 스토리지 최적화가 중요한 경우에는 TIMESTAMP를 고려해볼 수 있습니다.
TIMESTAMP⬇️
https://mariadb.com/kb/en/timestamp/
DATETIME⬇️
https://mariadb.com/kb/en/datetime/