【问题标题】:mySQL best index for %word% queries%word% 查询的 mySQL 最佳索引
【发布时间】:2013-02-10 11:31:28
【问题描述】:

MySQL 文档说,通常的 BTREE 索引在 % 位于查询字符串开头的查询中没有帮助,例如

SELECT textcol FROM manytexts WHERE textcol LIKE '%word%';

哪个索引可以在这里提供帮助?我对检索特定的短语很感兴趣,而 FULLTEXT 索引的逐字搜索无济于事。

谢谢!

【问题讨论】:

  • MySQL 中没有支持这种查询的索引(例如 Postgres 的 trigram 索引)。您将不得不使用全文搜索。

标签: mysql optimization text indexing


【解决方案1】:

没有索引可以帮助查询LIKE %%。这个谓词使参数非sargable

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-22
  • 2019-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-13
相关资源
最近更新 更多