我需要一些帮助来合并重叠间隔。
我有这张桌子:
id 开始 结束 1 15:30:00 16:20:00 2 10:00:00 13:00:00 3 15:00:00 16:09:00 4 11:00:00 14:00:00 5 16:20:00 16:30:00
SQL:
CREATE TABLE `intervals` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`start` time NOT NULL,
`end` time NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
INSERT INTO `intervals` (`start`, `end`) VALUES
('15:30:00', '16:20:00'),
('10:00:00', '13:00:00'),
('15:00:00', '16:09:00'),
('11:00:00', '14:00:00'),
('16:20:00', '16:30:00');
我想要这样的输出:
id 开始 结束 2 10:00:00 14:00:00 3 15:00:00 16:30:00
只有开始和结束时间很重要;ID列基本可以忽略。
PHP https://stackoverflow.com/a/4347215/1085872有类似的实现(直到第 2 步),但我只需要使用 MySQL 实现合并。