关于数据库以及SQL语句优化的一些方法

sql以及hql的使用很简单,但是想要用好,提高查询效率却需要优化,下面分享几条优化方法。
1.首先从表说起,
(1)在建立表的时候,要对那些需要经常查询的字段建立索引,提高查询速度。
(2)对于字段比较多的大表,进行拆分,将经常需要查询的字段放在一张表中,其余字段放在其他表中。
(3)将经常需要联合查询的字段,建立一个中间表,以后查询就去中间表中查询那些字段

2.从SQL语句优化
(1)sql语句中IN包含的值不应过多
(2)select语句务必指明要查询的名称
(3)当只需要显示一部分数据的时候,使用limit语句
(4)如果排序字段没有索引就尽量少排序
(5)如果限制条件中其他字段没有索引,尽量少用or
(6)尽量用union all代替union
(7)使用合理的分页方式以提高分页效率
(8)避免在where子句中对字段进行null判断
(9)不建议使用%前缀模糊查询(如like %me),这种查询会导致索引失效而进行全表扫描,但是可以用like “name%”
(10)避免在where子句中对字段进行表达式操作

关于join的优化
(1)尽量使用inner join,避免left join
(2)利用小表驱动大表
(3)合理利用索引,被驱动表的索引字段作为on的限制字段

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值