MySQL性能提升问题?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (28)

mysql如果涉及到通配符,是否会加快mysql等运算符的性能?例如。如“%test%”

提问于
用户回答回答于

最简​​单的优化是固定一个前缀(例如,"test%"而不是"%test""%test%"),因为这将允许引擎使用索引缩小搜索空间。

有时预处理步骤可以将通配符搜索转换为普通的符号或全文搜索。通过找到一种构建数据的方法,你可以获得更多的好处,从而不需要通配符搜索,而不是想去优化它

用户回答回答于

如果你的查询如foo LIKE 'abc%'等,MySQL可以使用索引foo LIKE 'abc%def%'。它可以使用第一个通配符之前的任何部分或字符串的索引。如果你需要在一个字符串的任何地方匹配一个单词,你可能需要考虑使用FULLTEXT索引。

有关索引的更多详细信息,请参见http://dev.mysql.com/doc/refman/5.1/en/mysql-indexes.html

全文搜索:http : //dev.mysql.com/doc/refman/5.0/en/fulltext-search.html

扫码关注云+社区

领取腾讯云代金券