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