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)
问题解决

posted @   inspire0x001  阅读(154)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示