У меня есть таблица с еженедельными данными, которая выглядит так:
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-скрипт, который сначала получает диапазон дат (понедельник-пятница), а затем выполняет запрос для каждого идентификатора пользователя для этого диапазона дат. Затем я просматриваю результаты и проверяю наличие пробелов между датами. Если есть пробел, он выводит дату, а сайт указан как «Оставайтесь дома». Он должен учитывать несколько дней подряд (например, если пользователь находится только в понедельник и пятницу на этой неделе), и он должен выполнять дополнительный шаг в конце каждой недели, чтобы убедиться, что если пользователь остается дома после Среда (таким образом, есть четверг и пятница, чтобы заполнить пробелы). Таким образом, он должен выполнить три проверки: одну для пользователей, не начинающихся в понедельник, одну для промежутков между днями и одну для пользователей, закончивших работу до пятницы... плюс он должен учитывать дни подряд для любой из этих ситуаций.
Сценарий в основном создает массив диапазона дат для проверки, и он отлично работал в течение нескольких месяцев. ОДНАКО
Мне было интересно, есть ли функция MySQL для возврата выходных для каждого пользователя? Чтобы я мог заполнить его «Оставайся дома» в запросе и не запускать странный сценарий, который вечно приходится объяснять другим людям, работающим со мной над моим сценарием?
Спасибо!