У меня есть таблица со столбцами min
и max
.Я хочу найти строки, где набор чисел находится между этим диапазоном min
и max
.
Пример: у меня есть набор (3, 4, 11, 18)
.
Моя фильтрация запросов может выглядеть так:
(3 between min and max) OR
(4 between min and max) OR
(11 between min and max) OR
(18 between min and max)
Но я хотел бы знать, есть ли лучший способ что-то вроде:
(3,4,11,12) between min and max
, который будет делать подобное# 1
Мне это нужно, потому что набор может меняться между различными поисками.Любая помощь или предложения приветствуются.
Таблица в более простом контексте - это class (classid, classname, minage, maxage).Существуют тысячи классов - поэтому я получаю веб-запрос на поиск классов с определенным набором возрастов, например (3,4,11,12), где пользователь ищет классы для возрастов 3, 4, 11 и 12.
В настоящее время мой запрос выглядит следующим образом: select * from class, где ((3 между min и max) ИЛИ (4 между min и max) ИЛИ (11 между min и max) ИЛИ (18 между min и max))