MySQL YEARWEEK() Function
In MySQL, the YEARWEEK()
function returns a number representing the year and week of the given date. This function is similar to WEEK()
.
YEARWEEK()
Syntax
Here is the syntax of MySQL YEARWEEK()
function:
YEARWEEK(date)
YEARWEEK(date, mode)
Parameters
date
- Required. A date or datetime expression.
mode
- Optional. It indicates the logic for calculating weeks. If this parameter is not specified, the variable
default_week_format
will be used by default.
Return value
The MySQL YEARWEEK()
function returns a number representing the year and week of the given date.
The following table lists all modes the WEEK()
function:
Mode | first day of the week | return value range | Requirements for the first week |
---|---|---|---|
0 |
Sunday | 0-53 |
|
1 |
Monday | 0-53 |
At least 4 days in the current year |
2 |
Sunday | 1-53 |
|
3 |
Monday | 1-53 |
At least 4 days in the current year |
4 |
Sunday | 0-53 |
At least 4 days in the current year |
5 |
Monday | 0-53 |
|
6 |
Sunday | 1-53 |
At least 4 days in the current year |
7 |
Monday | 1-53 |
If the specified expression is not a valid date or datetime, the YEARWEEK()
function will return NULL
.
If the argument is NULL
, the YEARWEEK()
function will return NULL
.
YEARWEEK()
Examples
Here are some examples of the YEARWEEK()
function.
SELECT
YEARWEEK('2022-01-01', 0),
YEARWEEK('2022-01-03', 0),
YEARWEEK('2022-01-01', 1),
YEARWEEK('2022-01-03', 1),
YEARWEEK('2022-01-01', 2),
YEARWEEK('2022-01-03', 2),
YEARWEEK('2022-01-01', 3),
YEARWEEK('2022-01-03', 3),
YEARWEEK('2022-01-01', 4),
YEARWEEK('2022-01-03', 4),
YEARWEEK('2022-01-01', 5),
YEARWEEK('2022-01-03', 5),
YEARWEEK('2022-01-01', 6),
YEARWEEK('2022-01-03', 6),
YEARWEEK('2022-01-01', 7),
YEARWEEK('2022-01-03', 7)\G
YEARWEEK('2022-01-01', 0): 202152
YEARWEEK('2022-01-03', 0): 202201
YEARWEEK('2022-01-01', 1): 202152
YEARWEEK('2022-01-03', 1): 202201
YEARWEEK('2022-01-01', 2): 202152
YEARWEEK('2022-01-03', 2): 202201
YEARWEEK('2022-01-01', 3): 202152
YEARWEEK('2022-01-03', 3): 202201
YEARWEEK('2022-01-01', 4): 202152
YEARWEEK('2022-01-03', 4): 202201
YEARWEEK('2022-01-01', 5): 202152
YEARWEEK('2022-01-03', 5): 202201
YEARWEEK('2022-01-01', 6): 202152
YEARWEEK('2022-01-03', 6): 202201
YEARWEEK('2022-01-01', 7): 202152
YEARWEEK('2022-01-03', 7): 202201
default_week_format
If mode
parameter is not specified, WEEK()
use the default_week_format
variable by default. We can view the value of the default_week_format
variable.
SHOW VARIABLES LIKE 'default_week_format';
+---------------------+-------+
| Variable_name | Value |
+---------------------+-------+
| default_week_format | 0 |
+---------------------+-------+