数据库查询优化

毕业5年,在学校时,关于数据库只学了一本《数据库简明教程》。(工作后有陆续看过些,都忘了)

现在的公司,机缘下,需要做查询优化。

 

1,上级的思路是,让程序员(我),优化SQL。

然后就开始了sql写到吐的日子。

个人总结:A,少用函数;B,少用Group by,聚合字段越多,速度更慢;C,如果老板过于追求速度,那就加索引(大量需要where和Group by的字段,加索引速度会变快);D,查询的中间过程用临时表,速度会变快(可能临时表它自己有优化)

这期间, 看了MSSQL的存储过程——

https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2005/ms174403(v%3dsql.90)

还有一下优化思路——

https://www.cnblogs.com/valarchie/p/5691778.html

 

2,其实在优化SQL前就觉得,这些慢的原因,应该是服务器和数据库造成的

表字段过多(随便就是10+起步,其实应该尽量别超过25个),千万级别的表有几个 ,都是经常要联合查询的。

还有同一个SQL语句,执行速度会相差10多s(这个我一直理解不了)

千万级别的数据,加索引是能变快的,但是代价也很客观

之前我一直不知道千万级别的数据,慢到什么程度算正常。就是已经没法改了,上级还让我改来改去的

 

3,

今天早上看了个优化的思路,比较认同——

https://www.zhihu.com/question/19719997/answer/549041957

 

我们上学时候,旁边大学好像有个特别牛的学数学的~把自己解决了~

当时是人人上看到的,也不知道原因。但就是觉得真的很没意思

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值