我在网站上寻找关键字搜索并遇到一些困难
$q = "SELECT * from post WHERE post_k like '%".$_GET['s']."%'";
搜索后的网站网址 website.com/?s=keyword
我没有获得全文搜索。例如,如果我搜索知更鸟,我可以从蝙蝠侠那里得到结果,因为他们都有n个单词。我正在寻找一个搜索,如果我输入知识,我只会从知更鸟那里得到结果。
由于
答案 0 :(得分:4)
您需要将MATCH AGAINST
与FULLTEXT INDEX
一起使用。
CREATE FULLTEXT INDEX search_index ON post (post_k);
然后你的查询会更像(使用MySQLi的预处理语句的例子):
$query = $mysqli->prepare("SELECT * FROM post WHERE MATCH(post_k) AGAINST(?)");
$query->bind_param('s', $_GET['s']);