The YEAR
type is a 1-byte type used to
represent year values. It can be declared as
YEAR
or YEAR(4)
and has a
display width of four characters.
MySQL 8.0 does not support the
YEAR(2)
data type permitted in
older versions of MySQL. For instructions on converting to
YEAR(4)
, see
YEAR(2) Limitations and Migrating to YEAR(4) in
MySQL 5.7 Reference Manual.
MySQL displays YEAR
values in
YYYY
format, with a range of
1901
to 2155
, or
0000
.
You can specify input YEAR
values in a
variety of formats:
As a 4-digit number in the range
1901
to2155
.As a 4-digit string in the range
'1901'
to'2155'
.As a 1- or 2-digit number in the range
1
to99
. MySQL converts values in the ranges1
to69
and70
to99
toYEAR
values in the ranges2001
to2069
and1970
to1999
.As a 1- or 2-digit string in the range
'0'
to'99'
. MySQL converts values in the ranges'0'
to'69'
and'70'
to'99'
toYEAR
values in the ranges2000
to2069
and1970
to1999
.The result of inserting a numeric
0
has a display value of0000
and an internal value of0000
. To insert zero and have it be interpreted as2000
, specify it as a string'0'
or'00'
.As the result of a function that returns a value that is acceptable in a
YEAR
context, such asNOW()
.
MySQL converts invalid YEAR
values to
0000
.