到目前为止,我有一个名为“业务”的表,其中包含 13,000,000 条记录。 我想在此表中搜索 lowerTitle 和 phone 字段。 如果我使用:
SELECT * FROM business WHERE MATCH (lowerTitle) AGAINST (`blabla` IN BOOLEAN MODE);
它工作得很快,现在我还想在 phone
字段中搜索,使用:
SELECT * FROM business WHERE MATCH (lowerTitle,phone) AGAINST (`blabla` IN BOOLEAN MODE);
由于某种原因,它运行得很慢,有人可以帮忙吗?
非常感谢。
最佳答案
确保您在 (lowerTitle,phone) 上有一个全文(不是 btree)索引。如果不是:
create fulltext index business_ft_idx on business(lowerTitle, phone);
关于MYSQL 匹配反对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6304138/