cpt报表查询

SQL特别长的报表查询的时候,一直查询不出来数据。

图片.png

但是,同样的查询条件在数据库中很快就能查询出来

图片.png

FineReport 莫入长安 发布于 2025-10-23 13:06
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共7回答
最佳回答
0
snrtuemcLv8专家互助
发布于2025-10-23 13:07

这个目前没好的办法

你优化下你的sql,查询时间控制在1秒内,你目前数据库就要13秒

然后数据控制在1万条内

  • 莫入长安 莫入长安(提问者) 这个逻辑是基于ERP的存储过程改的,因为使用人员需要直接连接ERP用于实时查询,sql写了2000多行
    2025-10-23 13:10 
  • snrtuemc snrtuemc 回复 莫入长安(提问者) 这个你只能优化了。。。或者咨询帆软技术看看可不可以解决
    2025-10-23 13:52 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2025-10-23 13:08

把sql改成存储过程试试

最佳回答
0
CD20160914Lv8专家互助
发布于2025-10-23 13:26

plsql的查询它其实只是展示前面200行的数据,后面的不会展示

但是在帆软中它要展示所有数据,由于你的逻辑复杂,而且查询所有数据时间较长,那么就会出现这样的情况

1、你得做etl数据处理,后台将数据同步到一张表

2、然后前端再单独查询这一张表就行了

最佳回答
0
帆软用户fPgo1MfuVVLv2见习互助
发布于2025-10-23 14:55(编辑于 2025-10-23 14:56)

构建存储过程,将查出来的数据存表,再用这个表就行,存储过程做定时调度,这样数据就能实时刷新

最佳回答
0
大番薯交流Lv2见习互助
发布于2025-10-23 16:12

把逻辑处理的结果落地就好了

最佳回答
0
JackTangLv5初级互助
发布于2025-10-23 16:58

可以使用新计算引擎,减少加载数据量

最佳回答
0
yoggaLv6见习互助
发布于2025-10-23 17:04

1、针对这个页面用到的字段信息,存储过程写个汇总表出来;

2、给汇总表中,在页面上查询、关联逻辑用到的字段添加索引;

3、优化sql,in 用exists替代,避免是select *....

  • 7关注人数
  • 76浏览人数
  • 最后回答于:2025-10-23 17:04
    请选择关闭问题的原因
    确定 取消
    返回顶部