MySQL week()函数中有一些模式可以定义
"Week 1 is the first week with 4 or more days this year".
https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_week
但是,我遇到了一个特殊的客户,他们对
的定义是"Week 1 is the first week with 5 or more days this year".
是否有任何方法可以设置此规则,或者有其他解决方法可以减轻这种情况?
示例:
根据客户的规则,本周属于2015年,因为2015年有5天。但是在MySQL week()中,只有在今年有4天以上或第一个星期日/星期一的情况下才能设置模式。
答案 0 :(得分:1)
我不确定您的要求是否正确,但是我会以最符合您要求的模式使用该功能(Sun vs Mon作为开始日,0或1个开始星期数),并会调用{{ 1}}函数具有与前一天相同的参数。如果它属于相同的星期数,则有5天。否则,返回增加的值(下周)。
因此,假定您需要查找给定日期WEEK()
的第一周(有5天)。
date