永洪社区

标题: 各位大佬,有什么办法能提高报表数据加载的速度么? [打印本页]

作者: 浪矢老爷爷    时间: 2023-7-24 09:56
标题: 各位大佬,有什么办法能提高报表数据加载的速度么?
sql在navicat执行平均花15s左右,在特定的筛选条件下大概有几万条数据要在自由表上展示,经常性的卡在页面加载过程中,有什么好的办法可以优化么?

作者: 浪矢老爷爷    时间: 2023-7-24 10:01
主要是有几百列,行的话是固定的96行,这几百列数据好像不能用分页解决
作者: 宋宋    时间: 2023-7-24 10:06
浪矢老爷爷 发表于 2023-7-24 10:01
主要是有几百列,行的话是固定的96行,这几百列数据好像不能用分页解决 ...

用自由表性能肯定会很慢,你试着用普通表或者交叉表这样的实现方式呢
作者: 浪矢老爷爷    时间: 2023-7-24 10:25
宋宋 发表于 2023-7-24 10:06
用自由表性能肯定会很慢,你试着用普通表或者交叉表这样的实现方式呢

比较复杂,普通表和交叉表实现不了..

作者: yhdata_lyaa    时间: 2023-7-24 11:20
列数太多了,优化就参考下https://yonghong-1252949735.cos. ... E%E8%B7%B5-V1.2.pdf

作者: 宋宋    时间: 2023-7-24 14:46
浪矢老爷爷 发表于 2023-7-24 10:25
比较复杂,普通表和交叉表实现不了..

其实太复杂的就优化下sql,尽量把计算逻辑放在sql数据集里,然后用交叉表去实现,因为你即便在优化,用自由表,还有很多计算列,脚本这些,我感觉什么时候打开都会很慢,提高不了性能
作者: 行走的蜗牛    时间: 2023-7-24 16:21
几百列的报表真的有必要展示吗
作者: yhdata_yzm    时间: 2023-7-24 16:32
自由表的计算逻辑和普通表是不一样的,数据量相当于A*B这种加载肯定很慢。这几百列一个不利于展示,建议还是选择你需要的列吧
作者: yhdata_MJsLa2Wl    时间: 2023-7-24 18:30
用普通表可能好一点
作者: yhdata_yzm    时间: 2023-7-24 18:31
yhdata_MJsLa2Wl 发表于 2023-7-24 18:30
用普通表可能好一点

普通表会好一点,但是不会好到哪儿去,几百列做展示就有点不合理




欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4