sql优化从300秒到7秒
原始sql
select b.jd 街道,b.rglm
楼宇,zzrl 楼宇编号,count(oname) 入楼企业总数,
(select count(oname) from
${tablename} where
zzrl=楼宇编号 and
sfgs='y' ) 工商企业数,
(select count(oname) from ${tablename}
where zzrl=楼宇编号
and
sfsw='y') 税务企业数,
(select count(oname) from
${tablename}
where zzrl=楼宇编号 and
sfsjp='y') 四经普企业数,
(select count(oname) from
${tablename} where zzrl=楼宇编号
and
sfxs='y') 规上企业数,
round(sum(sjss)/10000,2)
三级税收(万元),
round(sum(qjss)/10000,2) 区级税收(万元),
round(b.jzwmj,2) 建筑面积,
round(sum(qjss)/b.jzwmj,2)
单位建筑面积税收产出,
(select gshy from ${tablename} where zzrl=楼宇编号 GROUP BY
gshy order
by round(sum(qjss)/10000,2) desc limit 0,1) 主导行业,
(select
count(oname) from ${tablename} where zzrl=楼宇编号 and
gshy=主导行业 and gshy!='' and gshy is not null) 主导行业企业数量,
(select round(sum(sjss)/10000,2) from
${tablename} where
zzrl=楼宇编号 and
gshy=主导行业 and gshy!='' and gshy is not null) 主导行业三级税收(万元),
(select round(sum(qjss)/10000,2) from ${tablename}
where
zzrl=楼宇编号 and gshy=主导行业 and gshy!='' and gshy is not null) 主导行业区级税收(万元),
(select oname from
${tablename}
where zzrl=楼宇编号 order by
sjss+0 desc
limit 0,1) 三级税收排名第一企业名称,
(select round(sjss/10000,2)
from
${tablename} where oname=三级税收排名第一企业名称)
企业三级税收(万元),
(select
round(qjss/10000,2) from
${tablename} where oname=三级税收排名第一企业名称)
企业区级税收(万元)
from ${tablename} a,b_louyu_base_1183new b where a.zzrl=b.hb_bj_zz and
zzrl!='' and zzrl
is not null
group by zzrl;
优化后sql
select c.街道,c.楼宇, c.入楼企业总数, c.工商企业数, c.税务企业数, c.四经普企业数, c.规上企业数, c.三级税收(万元), c.区级税收(万元),
c.建筑面积, c.单位建筑面积税收产出,c.主导行业,( SELECT count( oname ) FROM hb_end_201906051646052_merge_rel WHERE zzrl =楼宇编号 AND gshy =主导行业 AND gshy != '' ) 主导行业企业数量,
(
SELECT
round( sum( sjss ) / 10000, 2 )
FROM
hb_end_201906051646052_merge_rel
WHERE
zzrl =楼宇编号
AND gshy =主导行业
AND gshy != ''
) 主导行业三级税收(万元),
(
SELECT
round( sum( qjss ) / 10000, 2 )
FROM
hb_end_201906051646052_merge_rel
WHERE
zzrl =楼宇编号
AND gshy =主导行业
AND gshy != ''
AND gshy IS NOT NULL
) 主导行业区级税收(万元),
c.三级税收排名第一企业名称,
(
SELECT
round( sjss / 10000, 2 )
FROM
hb_end_201906051646052_merge_rel
WHERE
oname =三级税收排名第一企业名称) 企业三级税收(万元),
(
SELECT
round( qjss / 10000, 2 )
FROM
hb_end_201906051646052_merge_rel
WHERE
oname =三级税收排名第一企业名称) 企业区级税收(万元) from
(SELECT
b.jd 街道,
b.rglm 楼宇,
zzrl 楼宇编号,
count( oname ) 入楼企业总数,
( CASE WHEN sfgs = 'y' THEN count( oname ) END ) 工商企业数,
( CASE WHEN sfsw = 'y' THEN count( oname ) END ) 税务企业数,
( CASE WHEN sfsjp = 'y' THEN count( oname ) END ) 四经普企业数,
( CASE WHEN sfxs = 'y' THEN count( oname ) END ) 规上企业数,
round( sum( sjss ) / 10000, 2 ) 三级税收(万元),
round( sum( qjss ) / 10000, 2 ) 区级税收(万元),
round(b.jzwmj,2) 建筑面积,
round(sum( qjss ) / b.jzwmj,2) 单位建筑面积税收产出,
( SELECT gshy FROM hb_end_201906051646052_merge_rel WHERE zzrl =楼宇编号 GROUP BY gshy ORDER BY sum( qjss ) DESC LIMIT 0, 1 ) 主导行业,( SELECT oname FROM hb_end_201906051646052_merge_rel WHERE zzrl =楼宇编号 ORDER BY sjss + 0 DESC LIMIT 0, 1 ) 三级税收排名第一企业名称 FROM
hb_end_201906051646052_merge_rel a
LEFT JOIN b_louyu_base_1183new b ON a.zzrl = b.hb_bj_zz
WHERE
a.zzrl != ''
GROUP BY
a.zzrl) c;
sql优化从300秒到7秒的更多相关文章
- 压缩20M文件从30秒到1秒的优化过程
文章来源公众号:IT牧场 有一个需求需要将前端传过来的10张照片,然后后端进行处理以后压缩成一个压缩包通过网络流传输出去.之前没有接触过用Java压缩文件的,所以就直接上网找了一个例子改了一下用了,改 ...
- SQL优化笔记—CPU优化
补充:常规服务器动态管理对象包括,下面有些资料可能会应用到 dm_db_*:数据库和数据库对象dm_exec_*:执行用户代码和关联的连接dm_os_*:内存.锁定和时间安排dm_tran_*:事务和 ...
- 转://从一条巨慢SQL看基于Oracle的SQL优化
http://mp.weixin.qq.com/s/DkIPwbDKIjH2FMN13GkT4w 本次分享的内容是基于Oracle的SQL优化,以一条巨慢的SQL为例,从快速解读SQL执行计划.如何从 ...
- SQL优化思路大全
一.百万级数据库优化方案 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断 ...
- 从一条巨慢SQL看基于Oracle的SQL优化(重磅彩蛋+PPT)
本文根据DBAplus社群第110期线上分享整理而成,文末还有好书送哦~ 讲师介绍 丁俊 新炬网络首席性能优化专家 SQL审核产品经理 DBAplus社群联合发起人.<剑破冰山-Oracle开发 ...
- 数据库SQL优化大总结之 百万级数据库优化方案(转载)
网上关于SQL优化的教程很多,但是比较杂乱.近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充. 这篇文章我花费了大量的时间查找资料.修改.排版,希望大家阅读之后,感觉 ...
- 关于数据库SQL优化
1.数据库访问优化 要正确的优化SQL,我们需要快速定位能性的瓶颈点,也就是说快速找到我们SQL主要的开销在哪里?而大多数情况性能最慢的设备会是瓶颈点,如下载时网络速度可能会是瓶颈点,本地复制文件 ...
- oracle sql 优化大全
转自: http://panshaobinsb.iteye.com/blog/1718233 http://yulimeander.blog.sohu.com/115850824.html 最近遇到了 ...
- SQL优化的若干原则
SQL语句:是对数据库(数据)进行操作的惟一途径:消耗了70%~90%的数据库资源:独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低:可以有不同的写法:易 ...
随机推荐
- XmlBeanDefinitionReader
- 机器学习(ML)八之正向传播、反向传播和计算图,及数值稳定性和模型初始化
正向传播 正向传播的计算图 通常绘制计算图来可视化运算符和变量在计算中的依赖关系.下图绘制了本节中样例模型正向传播的计算图,其中左下角是输入,右上角是输出.可以看到,图中箭头方向大多是向右和向上,其中 ...
- 单选与多选与label
单选radio和多选checkbox是用name属性关联的 相同的name就相当于同一道题 <input type="radio" name="radio" ...
- numpy中的CSV文件
As we all know,we use numpy to do some data explore.CSV has a good point to get a lot data. so how c ...
- js数据类型 判断
1. js数据类型(两种数据类型) 基本数据类型:null undefined number boolean symbol string 引用数据类型: array object null: 空对象 ...
- 32位CPU和64位CPU 区别
操作系统只是硬件和应用软件中间的一个平台. 32位操作系统针对的32位的CPU设计. 64位操作系统针对的64位的CPU设计.操作系统只是硬件和应用软件中间的一个平台. 32位操作系统针对的32位的C ...
- springcloud--ribbo(负载均衡)
ribbo:是Netflix公司开源的一个负载均衡的项目,是一个客户端负载均衡器,运行在客户端上. 实际运用案例(基于springcloud入门案例): 一.新建Module:springcloud- ...
- idea下maven项目下spring junit 测试用例
使用idea在编写的类下右键Go->Test或者ctrl+shift+t,点击create new test会在相应目录下创建test类 别写代码如下 @RunWith(value = Spri ...
- Oracle之SQL优化专题03-如何看懂SQL的执行计划
专题第一篇<Oracle之SQL优化专题01-查看SQL执行计划的方法>讲到了查看SQL执行计划的方法,并介绍了各种方法的应用场景,那么这一篇就主要介绍下如何看懂SQL的执行计划.毕竟如果 ...
- 移动端触屏click点击事件延迟问题,以及tap的解决方案
在移动端 触屏click事件虽然也会响应,但是总感觉是有延迟,一直听说click事件在手机上有200~300毫秒的延迟问题,亲自测了一下,在pc端模拟手机的话是测不出来的,但是用手机测试时发现延迟非常 ...