Как искать диапазон значений внутри другого диапазона в SQL - PullRequest
2 голосов
/ 22 ноября 2011

У меня есть форма, где я вводю минимальную цену и максимальную цену при создании информации о продукте.В поиске товара у меня также есть 2 поля, которые называются min и max.Так, как я могу получить результат данного диапазона, учитывая диапазон, указанный при вставке продуктов

Продукты

min  max

10    15
15    30
20    30 

В поисковой форме я вставляю мин. 5 и макс. 16. Какие продукты яполучит в результате и какова лучшая теория для поиска с учетом практических ситуаций.

Ответы [ 3 ]

3 голосов
/ 22 ноября 2011

Сравните противоположные концы каждого диапазона, чтобы найти продукты в перекрытии:

select * from products
where min < $max and max > $min

Этот подход хорошо работает и для диапазонов дат.

1 голос
/ 22 ноября 2011
select * from products where min>=5 and max<=16

поэтому на основании этого вы получите

Строка -> 10, 15

0 голосов
/ 22 ноября 2011

Оператор МЕЖДУ выбирает диапазон данных между двумя значениями.Значения могут быть числа, текст или даты .

SQL ОБУЧЕНИЕ для оператора

Например:

SELECT * FROM Product
WHERE price
BETWEEN $min AND $max
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...