公司报表要搞 sql 优化,但是有很多函数 函数里面有很多子查询,导致 sql 特别慢,小的学术浅薄,特来救助...嘤嘤嘤
1
BrilliantGinger OP dsada
|
2
fareware 2021-03-17 18:59:34 +08:00
举个例子
|
3
MeteorCat 2021-03-17 19:03:25 +08:00 via Android
直接加钱,没什么是加钱解决不了的,有的话那就是钱加的不够
|
4
MeteorCat 2021-03-17 19:09:55 +08:00 via Android
@MeteorCat 以前年轻也是和楼主一样烦恼,自从换了公司之后遇到这种问题,都是直接加配置处理,才发现真的加钱世界触手可及
|
5
shakoon 2021-03-17 19:13:30 +08:00
看执行计划,加索引
|
6
fiypig 2021-03-17 19:20:06 +08:00 via iPhone
explain 分析下
|
7
redtea 2021-03-17 19:33:21 +08:00
为什么一定要写成一条 SQL 执行,不能取出来在程序里处理后再输出吗?
|
8
levelworm 2021-03-17 20:19:19 +08:00 via Android
大哥你好歹给个例子啊。。。
|
9
proxychains 2021-03-17 20:36:46 +08:00 via Android
这是什么电影.jpg
|
10
BrilliantGinger OP @MeteorCat 哈哈 你可真有趣 直接加配置... 问题公司用的 mysql 只能靠我们咯
|
11
BrilliantGinger OP @levelworm 抱歉 老哥 第一次发主题...
|
12
BrilliantGinger OP @redtea 都是以前别人写好的...主要是用了很多函数 函数里面子查询 你想想假如我一个表有 4000 条数据 子查询表有 100w 条数据 就会对 100w 数据的表进行 4000 次访问 多可怕..我不知道怎么处理了
|
13
BrilliantGinger OP @shakoon 试过了
|
14
BrilliantGinger OP @fareware 都是以前别人写好的...主要是用了很多函数 函数里面子查询 你想想假如我一个表有 4000 条数据 子查询表有 100w 条数据 就会对 100w 数据的表进行 4000 次访问 多可怕..我不知道怎么处理了 第一次发帖子 不知道怎么发图片 嘿嘿
|
15
romisanic 2021-03-17 22:24:28 +08:00
data
sql |
16
levelworm 2021-03-18 01:19:33 +08:00 via Android
我觉得可能还是得从业务出发重构比较好。他这点代码是做啥的搞清楚应该就好些了。
|
17
xupefei 2021-03-18 08:08:34 +08:00 via iPhone
上 Spark SQL 。
|
18
zhiguang 2021-03-18 10:10:33 +08:00
用阿里的 mysql,十亿级别的数据都能查.....
|
19
BrilliantGinger OP @levelworm 搞业务的人都离职了...
|
20
BrilliantGinger OP @romisanic 0 。0
|
21
BrilliantGinger OP @xupefei 大数据 ...公司没那实力
|
22
BrilliantGinger OP @zhiguang 完全不是一种公司...
|
23
jowenz 2021-03-18 11:08:28 +08:00
@BrilliantGinger 你说的这个函数,如果函数里面要去其他表取数,应该类似标量子查询吧,数据量少没问题, 子查询(函数)如何走索引在 100W 里面查也不会很慢的。量多还是改写 SQL 吧。
|
24
BrilliantGinger OP 知道了 老哥,现在公司有个老人,用视图的方式去优化 sql,但是我感觉用视图做优化 并不是真正的优化,而我们现在写的 sql 的复杂度,这 sql 已经无法优化了,牵扯到表太多了
|
25
BrilliantGinger OP @jowenz 知道了 老哥,现在公司有个老人,用视图的方式去优化 sql,但是我感觉用视图做优化 并不是真正的优化,而我们现在写的 sql 的复杂度,这 sql 已经无法优化了,牵扯到表太多了
|
26
jowenz 2021-03-18 12:44:04 +08:00
@BrilliantGinger 视图没有优化吧,就是封装起来,少写代码,看起来整洁一些,有时候使用视图还会更慢
|
27
BrilliantGinger OP @jowenz 速度倒是快了不少...
|