故事背景:
有一张用户级表,数据量在千万级别,而运营人员要查看这张表,其中有一项查询条件为根据“错误类型”(单值)查出所有包含这个类型的数据,而这个数据类型在数据库存放的方式类似于 “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有如下说法:
前提,查询字段建立索引
那么问题来了,针对这起事故,你有什么好的解决办法呢????????
如对本文有疑问, 点击进行留言回复!!
Oracle常用语句(时间格式、去重、去特殊符号、查询表空间等)
Navicate 如何导出数据库中的存储过程、事件、视图等?
每日一记:Oracle升级2020年4月份的数据库补丁Database Patch Set Update : 11.2.0.4.200414 (30670774)
Oracle 19.3 dataguard for Redhat 7.6
网友评论