11.3.8 날짜에서 2 자리 연도
두 자리 연도를 포함한 날짜 값은 세기가 알 수 없기 때문에 모호합니다. MySQL에서는 나이는 내부적으로 4 자리로 저장되기 때문에, 그러한 값은 4 자리 형식으로 변환해야합니다.
DATETIME , DATE 및 TIMESTAMP 형은 MySQL은 다음 규칙을 사용하여 모호한 년의 값으로 지정된 날짜를 변환합니다.
00-69범위의 값은2000-2069로 변환됩니다.70-99범위의 값은1970-1999로 변환됩니다.
YEAR 는 규칙은 동일하지만 YEAR(4) 에 삽입 된 숫자 00 는 2000 이 아니라 0000 입니다. YEAR(4) 에 제로를 지정하고이를 2000 으로 해석하기 위해서는 문자열 '0' 또는 '00' 로이를 지정합니다.
이러한 규칙은 데이터 값이 무엇을 나타내는 지 합리적인 추측 단순한 경험에 근거한임을 기억하십시오. MySQL에서 사용되는 규칙에서 필요한 값이 생성되지 않는 경우 4 자리 연도를 포함하여 명확한 입력 값을 지정해야합니다.
ORDER BY 는 2 자리 연도를 갖는 YEAR 값을 정확하게 정렬합니다.
MIN() 와 MAX() 와 같은 일부 함수는 YEAR 를 숫자로 변환합니다. 즉, 두 자리 연도 값은이 함수에서는 제대로 작동하지 않습니다. 이 경우의 해결책으로는 YEAR 를 4 자리 연도 형식으로 변환합니다.