mySQL 全文搜索具有特定首字母的单词

标签 mysql full-text-search

我有一个非常大的数据库(10.000.000+),我使用全文搜索以合理的性能使用它。

但是有一个问题:在一种情况下,用户可以通过单击字母来按字母顺序搜索。然而我正在使用 LIKE 'C%' (例如),但这种搜索非常非常慢。

是否有可能通过 MATCH/AGAINST 通过字段的首字母查找所有数据集?

或者有人可以告诉我一种更快的方法,但不需要 MATCH/AGAINST 吗?

使用LIKE,搜索需要几分钟才能给出合理的数据响应,这不是唯一的方法。

最佳答案

如果您在具有如此多数据量的表中使用 like 'C%' 进行搜索,速度肯定会很慢。相反,您可以在查询中添加 limit ,例如搜索结果底部带有“显示更多”链接的前 50 条记录,点击链接后,将再次显示接下来的 50 条记录。这种方法可能会对您有所帮助。

关于mySQL 全文搜索具有特定首字母的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20322605/

相关文章:

postgresql - 使用 Postgres 全文搜索获取总命中数

mysql - 两个字段的全文搜索比一个字段的全文搜索快

php - 让 MySQL 全文搜索使用 AND

php - 无法使用 PHP 连接到我的数据库服务器

javascript - JS数组到PHP并使用PDO更新MYSQL中的表

sql-server - SQL Server 全文索引包含搜索完全匹配包含 "it"

spring - 如何在 hibernate 全文搜索中获得总计数?

MySQL INSERT [...] SELECT 与混合数据(来自 SELECT 子句和手动插入的值)?

mysql - Visual Basic 连接 MySQL 语法错误

php - Symfony 2 中的联接表