MySQL WEEKOFYEAR是日期函数之一,它返回给定日期的日历周数。此函数返回的值范围从1到53。
让我们看看如何使用此WEEKOFYEAR函数通过示例从表达式中获取年份的周数。WEEKOFYEAR 函数的基本语法如下所示
WEEKOFYEAR(date or expression);
MySQL WEEKOFYEAR 函数示例
以下查询可帮助您了解年份周数函数的基本用法。在这里,我们从日期表达式和日期时间表达式中返回日历周数。
提示:此 WEEKOFYEAR 方法等同于 WEEK(date, 3)。
SELECT WEEKOFYEAR('2018-12-25');
SELECT WEEKOFYEAR('2018-07-25 09:14:27');
SELECT WEEKOFYEAR('2018-10-25 09:14:27');

让我们看一个 MySQL WEEK OF YEAR 函数的另一个例子。在这里,我们从 Now() 返回的当前日期时间以及 CURDATE() 返回的当前日期返回周数。
SELECT WEEKOFYEAR(NOW());
SELECT WEEKOFYEAR(CURDATE());

示例 2
以下 MySQL WEEKOFYEAR 查询显示了当我们尝试从字符串格式的日期或无效的 DATETIME 中提取日历周数时会发生什么。
SELECT WEEKOFYEAR(CURDATE() + 120);
SELECT WEEKOFYEAR(0);
SELECT WEEKOFYEAR('2012-22-22');

从上面的屏幕截图中,(0) 表示我们正在尝试从零日期部分提取周数。这就是为什么它返回 NULL。在最后的语句中,(‘2012-22-22’);返回 NULL。因为它是一个无效的 MySQL 日期时间。