我有一个包含每周数据的表格,如下所示:
userID Site date
------ ------ ------
Smith Ferris Wheel 2009-07-13
Jones Outerspaceland 2009-07-13
LChar Ferris Wheel 2009-07-14
Smith Underworld 2009-07-16
Jones Fish Bowl 2009-07-17
Munson Go-Go Tech 2009-07-16
目前我有一个 PHP 脚本,它首先获取日期范围(星期一 - 星期五),然后对该日期范围的每个用户 ID 进行查询。然后,我遍历结果并检查日期之间的差距。如果有差距,它会输出日期,并且该站点被列为“待在家里”。它必须考虑连续几天(例如,如果用户仅在该周的星期一和星期五驻扎),并且必须在每周结束时执行额外的步骤,以确保用户是否在之后留在家中星期三(因此有星期四和星期五来填补空白)。因此,它必须进行三项检查,一项针对未在星期一开始的用户,一项针对天之间的间隔,一项针对在星期五之前结束的用户……此外,对于任何这些情况,它都必须考虑连续几天。
该脚本基本上创建了一个要检查的日期范围数组,并且几个月来一直运行良好。然而
我想知道,是否有一个 MySQL 函数可以为每个用户返回休息日?这样我就可以让它在查询中填写“待在家里”,而不必运行一个时髦的脚本,这个脚本需要永远向与我一起处理我的脚本的其他人解释?
谢谢!