Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql关键字搜索_Mysql_Search - Fatal编程技术网

mysql关键字搜索

mysql关键字搜索,mysql,search,Mysql,Search,我有一个包含电影名称的表,我希望能够在该表中搜索电影。但是我希望能够搜索部分标题,并且仍然返回结果。例如,如果有一个名为“quantum of solace”的记录,那么我希望能够搜索“quantum solace”,甚至“007:quantum solace”,我希望找到该记录。有办法做到这一点吗 编辑 我如何根据匹配项进行排序?也就是说,最匹配的行应该首先返回。在布尔模式下使用a。 如果您在搜索“007:quantum solace”时这样做,因为它在将显示的列中至少包含一个匹配结果,那么您

我有一个包含电影名称的表,我希望能够在该表中搜索电影。但是我希望能够搜索部分标题,并且仍然返回结果。例如,如果有一个名为“quantum of solace”的记录,那么我希望能够搜索“quantum solace”,甚至“007:quantum solace”,我希望找到该记录。有办法做到这一点吗

编辑 我如何根据匹配项进行排序?也就是说,最匹配的行应该首先返回。

在布尔模式下使用a。 如果您在搜索“007:quantum solace”时这样做,因为它在将显示的列中至少包含一个匹配结果,那么您可以按相关性排序

SELECT *, MATCH(title) AGAINST ('quantum solace' IN BOOLEAN MODE) AS rank 
FROM films
WHERE MATCH(title) AGAINST ('quantum solace' IN BOOLEAN MODE) ORDER BY rank DESC
看一看这张照片。设置全文索引后,可以执行如下查询:

SELECT * 
FROM movies
WHERE MATCH(title) AGAINST ('quantum solace' IN BOOLEAN MODE)