我正在运行看起来像这样的查询:
SELECT * FROM `table` WHERE `field` LIKE '%567%' LIMIT 6;
很明显,这不是最有效的方法,因为该方法不可思考,并且不遵守搜索字段的索引。由于我预计所述表无限增长(读取数百万条记录),因此低效率在我的上下文中是一个更大的问题。我按照一些网站的建议尝试了以下内容,但拒绝按预期执行搜索:
SELECT * FROM `table` WHERE CONTAINS(`field`, '567') LIMIT 6;
此选项仅在达到“精确”匹配时返回,而不是我正在寻找的匹配。
以下似乎具有相同的效果:
SELECT * FROM `table` WHERE MATCH (`field`) AGAINST ('567' IN BOOLEAN MODE);
是否有任何方法可以在MySQL中进行部分搜索?