我正在使用网站搜索引擎我能够进行搜索,现在我想修改查询以便进行智能搜索。
我正在写这样的查询
require_once('../global/connect.php');
$db = mysql_select_db($database,$connection) or trigger_error("SQL", E_USER_ERROR);
$sqlquery = mysql_query("SELECT title FROM test_table WHERE MATCH (title) AGAINST ('%keyword*%' IN BOOLEAN MODE) ")or die (mysql_error());
while($row=mysql_fetch_assoc($sqlquery)){
echo $row['title'];
echo"</br>";
}
我想要一个可以搜索的搜索功能。
如果用户输入任何这些关键字
KEYWORDS
KEY-WORDS
KEY-WORDS
KEY WORDS
KEYWORD
KEYWOR
结果应该相同。
我在这里查看了许多问题,例如this。并且看了一眼它,也看了MySQL开发者网站here,但我不知道如何修改我的查询以使其工作。
请建议任何可行的方法。
感谢。
答案 0 :(得分:0)
尝试SOUNDS LIKE
:
SELECT title FROM test_table WHERE title SOUNDS LIKE '%keyword*%'
答案 1 :(得分:0)
我建议使用Lucene进行搜索。它支持模糊匹配。此外,您的数据库负载也会减少。