【问题标题】:MySQL search text in best performance性能最佳的 MySQL 搜索文本
【发布时间】:2021-08-08 12:01:06
【问题描述】:

有什么方法可以在不使用全文搜索的情况下搜索 MySQL 中的特定文本 我知道 LIKE 是一种解决方案,但在开始时使用通配符会禁用使用索引,因此对于大数据来说不是最佳性能

【问题讨论】:

  • 请添加一些示例数据来解释您的问题。
  • 有3个选项:字符串搜索功能(中间搜索不使用索引)、正则表达式搜索(不使用索引)、全文搜索。选择一个...
  • @TimBiegeleisen 我需要一种方法来做类似于 LIKE 所做的事情,但要包含索引以提高性能,即: Select * from Files where Name LIKE '%est%';所以它返回任何名称包含这些字母“est”

标签: mysql search indexing


【解决方案1】:

请详细说明您的用例。

同时,我发现这在某些用例中是有益的。例如,假设您要搜索括号中的单词:

WHERE MATCH(col) AGAINST('+word' IN BOOLEAN MODE)
  AND col LIKE '%[word]%'

MATCH 会快速找到带有“word”的那几行,然后LIKE 会慢慢检查那几行。它在检查某些类型的非单词时提供了相当快的整体速度。

【讨论】:

    猜你喜欢
    • 2021-12-10
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-31
    • 2013-05-03
    相关资源
    最近更新 更多