SQL文速度改善经验(一)

问题:数据量总共就是13000多条,但是查询时间要半个小时左右,很不合常理,SQL文也就四百多行。

解决办法:中间有left join很多表,把SQL拆开,看每个子表各自的查询速度,发现都很快,但是join到一起就满了。

接下来尝试这把这些表一个个的去join,总算找到原因,最后一个join的表是13000多条数据,就相当是13000多条无序的数据join13000多条无序的数据,然后速度就慢了。最后解决办法:将最后一个join的子表放在外面,将主表的数据排序,子表也按照相应的规则排序,然后在join,最后速度快了很多,一分钟就出来了。

 

经验总结:如果是上万条数据join上万条数据去匹配的时候,无序的时候循环会有很多遍,速度会非常慢,解决办法最好是两个表按照同样的规则排序之后在join查询,速度会改善很多。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值