Я использую двухуровневой прикован полого выбора на моей странице, чтобы фильтровать данные ... У меня возникли проблемы с моим запросом для вторых выбора значений ...Сравнить Значение с запятыми строка SQL PHP
стола:
id name cat loc
1 ABC resort mall road
2 BCD banquet hall mall road
3 CDE farm house, banquet hall pakhowal road
4 DEF hotel ferozpur road
5 FEZ hotel fountain chowk
6 ZEX resort mall road
у меня есть два полех выбор, в котором первый один для различных значений кота ... который отлично работает для меня ...
запросов я использую это:
select distinct cat from
(select trim(substring_index(substring_index (concat(cat,',,'),',',n),',',-1))
as cat from table t
cross join (select 1 as n union all select 2 union all select 3) r) t
where cat <> '' ORDER BY cat ASC
Выход:
cat
banquet hall
farm house
hotel
resort
Теперь я хочу, чтобы сделать запрос, который выбирает всю ту область, которые имеют одинаковое значение кошачьих мы выбираем в первом окне, как если я выбрать «курорт» из первого выбор он выбрал «торговый путь» для второго ящика ... и в случае, если я выбрал «банкетный зал», тогда он должен был выбрать «шоссе» и «дорогу pakhowal» и так далее.
Я использовал запрос для этого также, но он не работает должным образом для меня ...
Второй Выберите поле запроса:
SELECT DISTINCT loc
from table
WHERE cat = '$_POST[cat]' AND loc IS NOT NULL
Это дает правильный выход для «курорта» и «отель «кот только .... если бы я выбрал« дом фермы »или« банкетный зал », он не получил« дорогу pakhowal »...
Как я могу изменить свой запрос, чтобы достичь этого ...?
На стороне записки, пожалуйста, используйте PDO или, по крайней мере, дезинфицировать ввод, прежде чем использовать его в запросе. Прямая вставка переменных $ _POST уже давно является плохой практикой. – Merv