如果您需要处理从星期一开始的几周,也可以这样做。首先定义一个自定义FIRST_DAY_OF_WEEK
函数:
DELIMITER ;;
CREATE FUNCTION FIRST_DAY_OF_WEEK(day DATE)
RETURNS DATE DETERMINISTIC
BEGIN
RETURN SUBDATE(day, WEEKDAY(day));
END;;
DELIMITER ;
然后您可以执行以下操作:
SELECT FIRST_DAY_OF_WEEK('2011-01-03');
仅供参考,MysqL提供了两种不同的功能来检索一周的第一天。有DAYOFWEEK:
返回日期的星期几索引(1 =星期日,2 =星期一,…,7 =星期六)。这些索引值对应于ODBC标准。
和WEEKDAY:
返回日期的星期几索引(0 =星期一,1 =星期二,…6 =星期日)。