您现在的位置:首页 --> 查看专题: like
like用的是 ‘%xx%’, 不符合前缀匹配的规则,因此用不上索引title,只能作全表扫描。以上为官方回答。但是如果是在 InnoDB这种聚集索引组织的表中,假设这个表单行很大,比如后面还有若干个类似memo的字段。 这样聚集索引会很大,导致全表扫描需要读更多的磁盘。而理想情况应该是这个流程 1) 遍历title索引,从中读取和过滤所有title中匹配like条件的id 2) 用id到聚簇索引中读数据。在单行很大,而like能够过滤掉比较多语句的情况下,上面的流程肯定比全表扫描更快,也更省资源。
1. like %keyword 索引失效,使用全表扫描。但可以通过翻转函数+like前模糊查询+建立翻转函数索引=走翻转函数索引,不走全表扫描。 2. like keyword% 索引有效。 3. like %keyword% 索引失效,也无法使用反向索引。
[ 共2篇文章 ][ 第1页/共1页 ][ 1 ]
近3天十大热文
- [67] Oracle MTS模式下 进程地址与会话信
- [66] Go Reflect 性能
- [65] 如何拿下简短的域名
- [61] android 开发入门
- [61] 【社会化设计】自我(self)部分――欢迎区
- [60] 图书馆的世界纪录
- [60] IOS安全–浅谈关于IOS加固的几种方法
- [54] 视觉调整-设计师 vs. 逻辑
- [49] 读书笔记-壹百度:百度十年千倍的29条法则
- [48] 界面设计速成
赞助商广告