了解MySQ(Oracle)模糊查询 使用instr()替代like提升效率

大家都知道like的效率很低,数据量大就会很慢,今天发现了一个内置函数instr()效率比like高

SELECT * FROM msg_list WHERE title LIKE '%%u6D82山%'

可以替换为:

SELECT * FROM msg_list WHERE INSTR(title,'涂山') > 0

在 ThinkPHP / Laravel中使用的方法有:使用 whereRaw()执行原生INSTR()修改构造查询器(不太推荐,不过用起来方便)

项目根目录\\\\thinkphp\\\\library\\\\think\\\\db\\\\Builder.php

MsgList::where([
     'title' => ['instr','涂山']])
 ->select();

相关学习推荐:mysql视频教程

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » 了解MySQ(Oracle)模糊查询 使用instr()替代like提升效率

登录

找回密码

注册