powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Поиск по диапазонам
3 сообщений из 3, страница 1 из 1
Поиск по диапазонам
    #38415215
Vitalia72
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуйста разобраться!

Подставили задачу сделать поиск по диапазонам, к примеру есть длина и ширина, выбираем от и до значения длины, также по ширине. К примеру есть 3 коробки, у них длина от 500 до 800 и ширина от 300 до 500. Делаю вот такой запрос, предварительно получив значения через форму инпут:


"
SELECT `id`,`title`,`description`,`imagemini`,`naznachenie`,`nomer`,`razmer2_d`,`razmer2_h`,`razmer2_v`,`date`,'view_data.php' AS `file` FROM `data` WHERE razmer2_d BETWEEN '$search' AND '$search2'
UNION ALL
SELECT `id`,`title`,`description`,`imagemini`,`naznachenie`,`nomer`,`razmer2_d`,`razmer2_h`,`razmer2_v`,`date`,'view_data.php' AS `file` FROM `data` WHERE razmer2_h BETWEEN '$search3' AND '$search4' "

Он сперва получается ищет по длине все коробки, потом по ширине и складывает в результат. Проблема заключается в том, что программа выводит всё подряд по одному параметру, а не сравнивая их с длиной и шириной. То есть если есть коробка в длине, но её нет в ширине, то тогда выводить её не надо. В интернете не смог найти решение, может вы сможете дать какой нибудь совет. Ещё есть проблема то что он повторяет некоторые коробки, но это вроде как решается через DISTINCT. Заранее благодарен
...
Рейтинг: 0 / 0
Поиск по диапазонам
    #38415242
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vitalia72, ЯННП.
Вам нужны коробки, удовлетворяющие сразу обоим условиям? тогда убирайте юнион и используйте AND в условии отбора.
...
Рейтинг: 0 / 0
Поиск по диапазонам
    #38415279
Vitalia72
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglir,

Спасибо за ответ, решил свою проблему:

SELECT `id`,`title`,`description`,`imagemini`,`naznachenie`,`nomer`,`razmer2_d`,`razmer2_h`,`razmer2_v`,`date`,'view_data.php' AS `file` FROM `data` WHERE razmer2_d BETWEEN '$search' AND '$search2' AND razmer2_h BETWEEN '$search3' AND '$search4'
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Поиск по диапазонам
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]