11.3.3 YEAR형
YEAR
형은 해의 값을 나타내는 데 사용되는 1 바이트의 형태입니다. 이것은 YEAR(4)
또는 YEAR(2)
고 선언하고 4 문자 또는 2 문자의 표시 폭을 지정할 수 있습니다. 폭이 지정되지 않은 경우 기본값은 4 자입니다.
YEAR(2)
데이터 형식은 사용하기 전에 고려해야 할 특정 문제가 있습니다. 또한 MySQL 5.6.6 이후에서는 YEAR(2)
는 비추천입니다. 기존 테이블의 YEAR(2)
컬럼은 이전과 같이 취급되지만 신규 또는 변경된 테이블에서 YEAR(2)
는 YEAR(4)
로 변환됩니다. 자세한 내용은 섹션 11.3.4 "YEAR (2)의 제한 및 YEAR (4)로 전환" 을 참조하십시오.
YEAR(4)
와 YEAR(2)
표시 형식이 다르지만 값의 범위는 동일합니다. 4 자리 형식의 경우 MySQL은 YYYY
형식 및 1901
에서 2155
또는 0000
의 범위에서 YEAR
값을 표시합니다. 마지막 두 자리 숫자의 경우 MySQL은 70
(1970 또는 2070)과 69
(2069) 등 마지막 (최하위)의 2 자리 만 표시합니다.
YEAR
의 입력 값은 다음과 같은 다양한 형식으로 지정할 수 있습니다.
1901
에서2155
의 범위의 4 자리 숫자로.'1901'
에서'2155'
의 범위의 4 자리 문자열로.1
에서99
사이의 한 자리 또는 두 자리 숫자로. MySQL은1
에서69
과70
에서99
사이의 값을2001
에서2069
과1970
에서1999
의 범위YEAR
값으로 변환합니다.'0'
에서'99'
의 범위의 한 자리 또는 두 자리 문자열로. MySQL은'0'
에서'69'
과'70'
에서'99'
의 범위의 값을2000
에서2069
과1970
에서1999
의 범위YEAR
값으로 변환합니다.숫자
0
을 삽입 한 경우, 그 효과는YEAR(2)
와YEAR(4)
에 따라 다릅니다.YEAR(2)
의 경우00
의 표시 값과2000
의 내부 값의 결과입니다.YEAR(4)
의 경우0000
의 표시 값과0000
의 내부 값의 결과입니다.YEAR(4)
에 제로를 지정하고이를2000
으로 해석하기 위해서는 문자열'0'
또는'00'
로이를 지정합니다.NOW()
등의YEAR
컨텍스트에서 허용되는 값을 반환하는 함수의 결과로.
MySQL은 잘못된 YEAR
값을 0000
로 변환합니다.
섹션 11.3.8 "날짜에서 2 자리 연도" 를 참조하십시오.