故事背景:
有一张用户级表,数据量在千万级别,而运营人员要查看这张表,其中有一项查询条件为根据“错误类型”(单值)查出所有包含这个类型的数据,而这个数据类型在数据库存放的方式类似于 “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有如下说法:
前提,查询字段建立索引
那么问题来了,针对这起事故,你有什么好的解决办法呢????????
原文链接:http://www.cnblogs.com/java333/p/10721888.html
本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728