设为首页 加入收藏

TOP

一场由like引发的事故
2019-09-17 18:39:19 】 浏览:22
Tags:like 引发 事故

故事背景:

  有一张用户级表,数据量在千万级别,而运营人员要查看这张表,其中有一项查询条件为根据“错误类型”(单值)查出所有包含这个类型的数据,而这个数据类型在数据库存放的方式类似于 “1,2,3,4,5,6,8,9,10,7,11,12”  无序。于是有了如下sql。

1 select count(mistake_type)
2     from mitake_table 
3     where (r.mistake_type = '1' 
4               OR r.mistake_type LIKE '%,1' 
5               OR r.mistake_type LIKE '1,%' 
6               OR r.mistake_type LIKE '%,1,%')        
like案例

 like剖析:

  基于上述案例,查证度娘,关于like有如下说法:

    前提,查询字段建立索引

  1.     字段 like ‘%关键字%’  不走索引,速度最慢
  2.     字段 like ‘关键字%’     使用字段进行升序索引
  3.     字段 like ‘%关键字’     使用字段进行降序索引

 那么问题来了,针对这起事故,你有什么好的解决办法呢????????

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇memcached架构及缓存策略 下一篇关于Redis的常见面试题解析

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目