7.30 项目记录 一个查询sql优化实例

背景:查询sql由多个union all将多张业务表组合而成一张大表t(实际上多个union all并不符合规范,但是项目中尚未找到更好的方案),这张大表再与头表进行关联。

一开始的sql中,时间范围限制条件where cre_dt > 'xxx'是放在大表t的外面(即先union all成大表t,再时间条件查询),查询非常耗时(且6万数据和60万数据结果差别不大,都是大几十秒)

之后将时间范围限制条件放在每一张业务表的查询语句之内,再由它们union all成为大表t,查询6万数据耗时降到4s,查询60万数据依旧耗时大几十秒(这纯粹是因为查询的复杂sql导致的,暂时没想到什么办法优化。感觉业务表和头表设计之初字段没安排好,后面相关代码写了挺多,想再改表结构就很麻烦,无法改了)

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值