码迷,mamicode.com
首页 > 数据库 > 详细

sql语句查询,多字段like模糊查询优化

时间:2021-05-24 05:31:00      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:https   ||   like   nvl   需要   字段   调查   nbsp   替代   

1、 多字段like模糊查询优化:
最常见的写法:where  a like ‘%xx%‘ or b like ‘%xx%‘ or c like ‘%xx%‘;  这种写法查询效率低,经过调查,下面的方法可以替代,并且效率高:
1、如果like的关键字相同:
where instr(nvl(a, ‘‘)||nvl(b,‘‘)||nvl(c,‘‘),   ‘xx‘) > 0
把要模糊查询的字段先拼接起来,拼接时需要把null转成‘’,否则只要有一个字段值是空,整个拼接的字符串都成空了, 然后用instr 函数去过滤;
2、如果like的关键字不同:
where instr(a, ‘xx‘) > 0  or  instr(b, ‘yy‘) > 0  or instr(c, ‘zz‘) > 0 
经过测试,这两种方法都比like效率要高;
 

 

 

from:https://blog.csdn.net/zhujianpengzha/article/details/52711554

sql语句查询,多字段like模糊查询优化

标签:https   ||   like   nvl   需要   字段   调查   nbsp   替代   

原文地址:https://www.cnblogs.com/youmingkuang/p/14754979.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!