mysql查询优化
一.模糊查询优化
1.like
like '%${name}%'
缺点:输入 % 或 _ 时,全部查出来
2.concat
SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');
( 实际代码: num LIKE CONCAT('%',#{request.num},'%')实际代码 )
或: concat('%',keyword,'%')
或:<if test="name !=null and name != '' ">
and name like '%' ||#{name}|| '%'
</if>
缺点:%的问题解决了,但是输入下划线(_)时,全部查出来
3.position
select * from articles where POSITION('张三' in title)
问题解决
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步