我正在使用LIKE运算符来搜索标题。但是当用户用空格键入单词时,它没有给出期望的结果,可以做什么?
示例:title has - national foundation
当我输入national
时,它会返回此标题,但在national geography
时,它会显示未找到结果。如何在用户输入空格时删除此空格或如何正确搜索?
答案 0 :(得分:1)
SELECT Title FROM table
WHERE MATCH (title)
AGAINST ('national geography');
答案 1 :(得分:0)
假设用户输入的搜索查询存储在$search
$ex=explode(' ',$search);
$tempq='';
foreach ($ex as $s){
$tempq.=" or title sounds like '$s' ";
}
$tempq=substr($tempq,4);
$results=mysql_query("select * from TABLE where $tempq");
为了获得更好,更快的结果,请删除“声音”,为列编制索引,限制搜索查询。
'听起来像'会返回一起发出声音的结果:如果用户搜索“layk”,可能会返回“喜欢”... 我希望这会有所帮助。