Using SQL to match characters in query string
MySQL SELECT query string matching 这些与我的要求不符。
嗨,我正在使用PHP和mysql。我找了一份求职信息'我的网站中的功能,我们可以按城市搜索工作。 例如,如果我们在海德拉巴市发布一份工作,并且如果用户使用相同的单词' Hyderabad'来搜索该工作。他得到了结果。但如果他通过输入Hydrabad进行搜索(' e'缺失),他就无法得到结果,而且德里','新德里',&# 39; NewDelhi&#39 ;. 如果我使用像,
这样的外卡运营商"SELECT * FROM jobs_tbl WHERE job_city LIKE '%".$search_city."%' "
"SELECT * FROM jobs_tbl WHERE job_city LIKE '%%".$search_city."%%' "
他们不会为我工作,因为虽然在字符串中遗漏了一些字母和空格,但我仍然会得到结果。 所以,如果至少4或5个字符与搜索字符串匹配,你能否告诉我是否有可能获取一行?我搜索了这样的运营商但找不到。或者有其他方法吗?
答案 0 :(得分:2)
您可以在每个角色之间添加%
。
$like_city = preg_replace('//', '%', $search_city); // Hyderbad => %H%y%d%e%r%b%a%d%
$sql = "SELECT * FROM jobs_tbl WHERE job_city LIKE '$like_city' "