0

我正在研究能够进行搜索的站点搜索引擎,现在我想修改查询以进行智能搜索。

我正在这样写我的查询

    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

结果应该是一样的。

我在这里看了很多这样的问题。凝视它,还查看了这里的 MySQL 开发者网站,但我不知道如何修改我的查询以使其正常工作。

请为此提出任何可能的方法。

谢谢。

4

2 回答 2

0

我建议使用 Lucene 进行搜索。它支持模糊匹配。此外,您的数据库负载也会减少。

于 2012-07-26T12:59:55.273 回答
0

尝试SOUNDS LIKE

SELECT title FROM test_table WHERE title SOUNDS LIKE '%keyword*%'
于 2012-07-26T12:45:08.450 回答