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 자리 연도 형식으로 변환합니다.