yearweek

description

Syntax

INT YEARWEEK(DATE date) INT YEARWEEK(DATE date, INT mode)

返回指定日期的年份和星期数。mode的值默认为0。 当日期所在的星期属于上一年时,返回的是上一年的年份和星期数; 当日期所在的星期属于下一年时,返回的是下一年的年份,星期数为1。 参数mode的作用参见下面的表格:

Mode星期的第一天星期数的范围第一个星期的定义
0星期日1-53这一年中的第一个星期日所在的星期
1星期一1-53这一年的日期所占的天数大于等于4天的第一个星期
2星期日1-53这一年中的第一个星期日所在的星期
3星期一1-53这一年的日期所占的天数大于等于4天的第一个星期
4星期日1-53这一年的日期所占的天数大于等于4天的第一个星期
5星期一1-53这一年中的第一个星期一所在的星期
6星期日1-53这一年的日期所占的天数大于等于4天的第一个星期
7星期一1-53这一年中的第一个星期一所在的星期

参数为Date或者Datetime类型

example

  1. mysql> select yearweek('2021-1-1');
  2. +----------------------+
  3. | yearweek('2021-1-1') |
  4. +----------------------+
  5. | 202052 |
  6. +----------------------+
  1. mysql> select yearweek('2020-7-1');
  2. +----------------------+
  3. | yearweek('2020-7-1') |
  4. +----------------------+
  5. | 202026 |
  6. +----------------------+
  1. mysql> select yearweek('2024-12-30',1);
  2. +------------------------------------+
  3. | yearweek('2024-12-30 00:00:00', 1) |
  4. +------------------------------------+
  5. | 202501 |
  6. +------------------------------------+

keyword

  1. YEARWEEK