[英]Convert Comma separated string to comma separated integer value in PHP
[英]Compare Value with Comma Separated String 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
我有兩個選擇框,其中第一個是DISTINCT貓值...這對我來說非常合適...
我正在使用的查詢是:
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
現在,我要進行查詢,以選擇我們在第一個框中選擇的具有相同貓咪值的所有區域,例如,如果我從第一個框中選擇“度假村”,則在第二個框中選擇“購物中心” ...如果我選擇了“宴會廳”,則應選擇“商場路”和“百老匯路”等。
我也為此使用了查詢,但對我來說它無法正常工作...
第二選擇框查詢:
SELECT DISTINCT loc
from table
WHERE cat = '$_POST[cat]' AND loc IS NOT NULL
它只為“度假勝地”和“旅館”貓提供正確的輸出。...如果我選擇“農舍”或“宴會廳”,它不會獲取“百老匯路” ...
如何更改查詢以實現此目標?
嘗試這個:
SELECT DISTINCT loc
FROM [YourTable]
WHERE INSTR(CONCAT(', ',cat,' ,'),CONCAT(', ','$_POST[cat]',' ,'))>0 AND loc IS NOT NULL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.