我想知道一家商店目前是否在营业时间内,如果没有,则选择下次营业时间。
最后,我需要能够将开幕日设置为特定日期。
有人可以给我一个提示如何构建这个查询吗?
提前致谢
CREATE TABLE `shop_hours` (
`id` int(11) NOT NULL,
`shop_id` int(11) unsigned NOT NULL,
`day_of_week` int(11) unsigned NOT NULL,
`open_time` time NOT NULL,
`close_time` time NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `shop_hours` (`id`, `shop_id`, `day_of_week`, `open_time`, `close_time`)
VALUES
(1, 1, 0, '08:00:00', '24:00:00'),
(2, 1, 1, '08:00:00', '24:00:00'),
(3, 1, 2, '08:00:00', '24:00:00'),
(4, 1, 3, '08:00:00', '24:00:00'),
(5, 1, 4, '08:00:00', '24:00:00'),
(6, 1, 5, '08:00:00', '24:00:00'),
(7, 1, 6, '08:00:00', '24:00:00');
编辑:
为了澄清一点,我不想找到开放的商店,而只是寻找一个特定商店的营业时间。根据开/关时间以及现在的时间。我将生成一些以 15 分钟递增的可选时间戳。
例如,如果一家商店刚刚关门(下午 1 点),我将需要改用下一个营业日的开/关时间。(这家店不一定每天都开门,周日可能不营业)。