我有一个包含电影名称的表格,我希望能够在该表格中搜索电影.但我希望能够搜索部分标题,并仍然返回结果.例如,如果有一个名为"安慰的量子"的记录,那么我希望能够搜索"量子安慰",甚至"007:量子安慰",我想找到那个记录.有没有办法做到这一点?
编辑 我如何根据比赛排序?也就是说,应该首先返回匹配最多的行.
在布尔模式下使用MySQL全文搜索.如果您在搜索'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