>  기사  >  데이터 베이스  >  MySQL은 시간 필드를 저장하기 위해 int, timestamp 또는 datetime을 사용합니까?

MySQL은 시간 필드를 저장하기 위해 int, timestamp 또는 datetime을 사용합니까?

高洛峰
高洛峰원래의
2016-12-02 13:23:191419검색

일반적으로 datetime 유형은 시간을 저장하는 데 사용됩니다. 이제 많은 시스템에서 int를 사용하여 시간을 저장합니다. 내 정리는 다음과 같다:

int

(1) 4바이트 저장 공간, INT 길이는 4바이트, 저장 공간은 datatime보다 작고, int 인덱스 저장 공간은 크기도 작고, 정렬, 쿼리 효율성도 상대적으로 높다
(2) 가독성이 매우 떨어지고, 데이터를 직관적으로 볼 수 없어 짜증이 날 수 있다


TIMESTAMP

(1) 4바이트 저장
(2) UTC 형식으로 저장된 값
(3) 타임존 변환, 저장할 때 현재 타임존을 변환하고 다시 타임존으로 변환 시간대를 검색할 때 현재 시간입니다.
(4) TIMESTAMP 값은 1970년 이전 또는 2037년 이후일 수 없습니다


datetime

(1) 8바이트 저장
( 2 ) 시간대 독립적

(3) 'YYYY-MM-DD HH:MM:SS' 형식으로 DATETIME 값을 검색하여 표시합니다. 지원 범위는 '1000-01-01 00:00:00' ~ '9999-12-31 23:59:59' 입니다.

mysql은 최근 2년 동안 인기를 끌었고 그 성능은 점점 더 좋아지고 있습니다. 구체적인 보관 방법은 개인 습관과 프로젝트 요구 사항에 따라 다릅니다


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.