SQL(及存储过程)跑得太慢怎么办?

上之前有给大家玩过一下SPL ,这一次继续深入玩一下。

ClickHouse 挺快,esProc SPL 更快_小目标青年的博客-CSDN博客

SQL作为目前最常用的数据处理语言,广泛应用于查询、跑批等场景。 

当数据量较大时,使用SQL(以及存储过程)经常会发生跑得很慢的情况,这就要去优化SQL。

优化SQL有一些特定的套路,通常先要查看执行计划来定位SQL慢的原因,然后针对性改写来优化SQL,比如对于连续数值判断可以用between来替代in,select语句指明字段名称,用union all替代union,把exists改写成join等。

当然还有一些工程上的优化手段,如建立索引,使用临时表/汇总表等,优化的方法有很多,相信各位DBA都不会陌生。

但遗憾的是,仍然有相当多情况无论怎样优化都不可能跑得更快。

这里[做 SQL 性能优化真是让人干瞪眼]( http://c.raqsoft.com.cn/article/1638515485216)介绍了一些,并做了相应的技术分析。由于其理论基础关系代数的局限,SQL缺乏离散性和有序集合等特性的支持使得SQL在表达某些高性能算

评论 53
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小目标青年

对你有帮助的话,谢谢你的打赏。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值