Ваш вопрос не показывает, откуда исходит выбранное время. Это в столбце, это что-то, что пользователь устанавливает в SQL, или это посылается через код?
Если время установлено в SQL, то способ сделать это следующим образом:
SET @mytime := '19:00:00';
SELECT * FROM `table` WHERE CAST(@mytime AS TIME) BETWEEN from_time AND to_time;
где @mytime - переменная, заданная пользователем, и предполагается, что from_time и to_time - формат времени.
Моя тестовая таблица для вышеупомянутого была следующей:
CREATE TABLE `timetest` (
`id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`from_time` time DEFAULT NULL,
`to_time` time DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
с данными испытаний как:
INSERT INTO `timetest` (`id`, `from_time`, `to_time`) VALUES
(1, '09:00:00', '11:00:00'),
(2, '06:30:00', '14:00:00'),
(3, '14:29:10', '16:12:18'),
(4, '09:11:17', '23:00:01'),
(5, '18:00:00', '23:59:59'),
(6, '01:12:00', '11:59:44');