我想从很多记录中按名称搜索。当我使用MySQL LIKE
时,将花费太多时间进行搜索。如果我在代码上使用fulltext
搜索match(name) against(*linebre*) IN BOOLEAN MODE
会更快吗?
我检查了我的记录
MySQL喜欢
MariaDB [****]> select count(*) from contents where tags like "%а%";
+----------+
| count(*) |
+----------+
| 16927 |
+----------+
1 row in set (0.08 sec)
全文
MariaDB [****]> select count(*) from contents where match(tags) against('*а*' IN BOOLEAN MODE);
+----------+
| count(*) |
+----------+
| 6665 |
+----------+
1 row in set (0.06 sec)
似乎我在
FULLTEXT
搜索上使用错误。有很大的不同。我该如何使用?哪一个方便使用?
最佳答案
在这里不知道count
的要求是什么,但是您可以尝试
select count(*) from contents where match(tags) against('а' IN BOOLEAN MODE);
希望能有所帮助
关于java - MySQL LIKE vs BOOLEAN MODE(FULLTEXT)在何处以及何时使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41235157/