是否可以将 mySQL 设置为星期六作为一周的开始?
我正在尝试运行如下查询:
SELECT DISTINCT(week(`date`))
FROM `table`
WHERE `date` BETWEEN '2010-08-14' AND '2010-08-27'
但是一周从周六开始,而不是周日或周一。 (这是发薪周,不是常规周) 似乎星期功能的模式只提供星期日或星期一作为开始日期。
我读过设置 default_week_format 有帮助,但我认为这对我不起作用,因为这仅适用于特定报告,而不适用于整个系统。
我还有其他选择吗?
最佳答案
摘自 Tomasz 回答中链接的评论:
Problem: To find week start and end date with user specified start of the week day and user specified date for which the week is to be found.
date_sub(t.date, interval if(dayofweek(t.date)-$weekStartingDay >= 0, dayofweek(t.date)-$weekStartingDay, dayofweek(t.date)-$weekStartingDay+7) day) week_start
date_sub(t.date, interval if(dayofweek(t.date)-$weekStartingDay >= 0, dayofweek(t.date)-$weekStartingDay, dayofweek(t.date)-$weekStartingDay+7) - 6 day) week_end
关于sql - 是否可以将 mySQL 设置为星期六作为一周的开始?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3687119/