MySQL WEEK函数
时间:2019-02-04 12:52:46 来源:igfitidea点击:
本MySQL教程通过语法和示例说明了如何使用MySQL WEEK函数。
描述
MySQL WEEK函数用于返回日期值中的星期部分。
语法
MySQL中WEEK函数的语法为:
WEEK( date_value, [ mode ] )
date_value要从中提取星期的日期或日期时间值。
mode可选的。它用于指定星期几。
可以是下列模式之一:
| 模式 | 说明 | 返回值 |
|---|---|---|
| 0 | 周日算一周的第一天 | 0-53 |
| 1 | 周一算一周的第一天,并且第一周有3天以上 | 0-53 |
| 2 | 周日算一周的第一天 | 1-53 |
| 3 | 周一算一周的第一天,并且第一周有3天以上 | 1-53 |
| 4 | 周日算一周的第一天并且第一周有3天以上 | 0-53 |
| 5 | 周一算一周的第一天 | 0-53 |
| 6 | 周日算一周的第一天并且第一周有3天以上 | 1-53 |
| 7 | 周一算一周的第一天 | 1-53 |
说明
- WEEK函数将根据指定的模式返回0-53或1-53之间的值。
- 如果版本是MySQL 4.0.14+,但未指定模式,则WEEK函数将使用系统变量default_week_format作为mode值。
- 如果MySQL版本低于4.0.14,并且未指定模式,则WEEK函数默认使用0模式。
- 函数WEEKOFYEAR 和WEEK(DATE_VALUE,3)的作用是一样。
- 请查阅ISO周的相关说明
示例
注意:根据系统变量default_week_format的设置,您的结果可能与以下示例有所不同。
mysql> SELECT WEEK('2012-01-01');
Result: 1
mysql> SELECT WEEK('2012-04-20');
Result: 16
mysql> SELECT WEEK('2012-07-16');
Result: 29
mysql> SELECT WEEK('2012-10-15');
Result: 42
mysql> SELECT WEEK(CURDATE());
Result: 13
mysql> SELECT WEEK('2012-01-01',1);
Result: 0
mysql> SELECT WEEK('2012-04-20',2);
Result: 16
mysql> SELECT WEEK('2012-07-16',3);
Result: 29
mysql> SELECT WEEK('2012-10-15',4);
Result: 42

