MariaDB WEEK() 函数使用指南
在 MariaDB 中,WEEK() 是一个内置函数,它返回给定日期位于当年的第几周。
MariaDB WEEK() 语法
这是 MariaDB WEEK() 函数的语法:
WEEK(date)
WEEK(date, mode)
参数
- date
- 必需的。一个日期或者日期时间表达式。
- mode
- 可选的。确定计算周的逻辑。如果没有指定该参数,默认将使用 default_week_format变量的值。
返回值
MariaDB WEEK() 函数返回给定日期位于当年的第几周,取值范围为 0 到 53。
下表整理了 WEEK() 函数对 mode 参数的处理逻辑:
| Mode | 每周的第一天 | 返回值范围 | 对第一周的要求 | 
|---|---|---|---|
| 0 | 星期天 | 0-53 | |
| 1 | 星期一 | 0-53 | 在本年至少 4 天 | 
| 2 | 星期天 | 1-53 | |
| 3 | 星期一 | 1-53 | 在本年至少 4 天 | 
| 4 | 星期天 | 0-53 | 在本年至少 4 天 | 
| 5 | 星期一 | 0-53 | |
| 6 | 星期天 | 1-53 | 在本年至少 4 天 | 
| 7 | 星期一 | 1-53 | 
- 如果指定的表达式不是一个合法的日期或者日期时间,WEEK()函数将返回NULL。
- 如果参数为 NULL,WEEK()函数将返回NULL。
MariaDB WEEK() 示例
这里是几个 WEEK() 函数的示例。
SELECT
    WEEK('2023-01-01', 0),
    WEEK('2023-01-03', 0),
    WEEK('2023-01-01', 1),
    WEEK('2023-01-03', 1),
    WEEK('2023-01-01', 2),
    WEEK('2023-01-03', 2),
    WEEK('2023-01-01', 3),
    WEEK('2023-01-03', 3),
    WEEK('2023-01-01', 4),
    WEEK('2023-01-03', 4),
    WEEK('2023-01-01', 5),
    WEEK('2023-01-03', 5),
    WEEK('2023-01-01', 6),
    WEEK('2023-01-03', 6),
    WEEK('2023-01-01', 7),
    WEEK('2023-01-03', 7)\G
输出:
WEEK('2023-01-01', 0): 1
WEEK('2023-01-03', 0): 1
WEEK('2023-01-01', 1): 0
WEEK('2023-01-03', 1): 1
WEEK('2023-01-01', 2): 1
WEEK('2023-01-03', 2): 1
WEEK('2023-01-01', 3): 52
WEEK('2023-01-03', 3): 1
WEEK('2023-01-01', 4): 1
WEEK('2023-01-03', 4): 1
WEEK('2023-01-01', 5): 0
WEEK('2023-01-03', 5): 1
WEEK('2023-01-01', 6): 1
WEEK('2023-01-03', 6): 1
WEEK('2023-01-01', 7): 52
WEEK('2023-01-03', 7): 1结论
在 MariaDB 中,WEEK() 是一个内置函数,它返回给定日期位于当年的第几周。