如何解决从两个数据连接取数时数据过大的问题?

我有两个数据集刷卡记录和厂商名称,它们分别来自两个数据库,sql server数据库1和mysql数据库2,两个之间通过卡号关联。当我要查询某个厂商某一时期刷卡记录时,首先把这一时期所有的刷卡记录取出来,再取出该厂商的所有卡号,在报表中关联后,把刷卡记录中厂商值为空的行高设为0.这样能用,但是当区间太长时刷卡数据过多会导致溢出,有没有什么解决办法?谢谢。

FineReport kkluoluo 发布于 2022-8-31 16:34
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
axingLv6专家互助
发布于2022-8-31 16:39

在对应的两个数据集sql里先筛选一遍厂商

报表中设置过滤关联

如果厂商名称这个数据集仅仅只是提供一个名称字段,那么不用做关联,报表只展示刷卡记录,再通过形态-数据字典显示名称

如果还是卡,建议先进行ETL操作

  • kkluoluo kkluoluo(提问者) 好像不行,我在第一个数据库里没有厂商名称的信息
    2022-08-31 16:54 
  • axing axing 回复 kkluoluo(提问者) 在需要显示厂商名称的地方,放刷卡记录的卡号,然后设置数据字典,选择厂商名称数据集,实际值为卡号,显示值为厂商名称
    2022-08-31 16:58 
  • kkluoluo kkluoluo(提问者) 现在不是卡,是在查询数据集1时数据量过大导致溢出。可不可以在点击查询时先执行代码从数据集2查出厂商卡号,作为参数传给数据集1?
    2022-08-31 17:02 
  • axing axing 回复 kkluoluo(提问者) 可以通过sql()公式来关联,不过建议还是在ETL中先处理
    2022-08-31 17:06 
  • kkluoluo kkluoluo(提问者) 回复 axing 我试了数据字典,但还是数据量过大,能指导一下sql()怎么写吗?
    2022-08-31 17:31 
最佳回答
0
梦似幻亦真Lv3见习互助
发布于2022-8-31 17:02

image.png

最佳回答
0
996433090@qq.coLv6初级互助
发布于2022-8-31 20:05
建议sqlserver数据库远程连接mysql,然后做跨库union,应该是可以的
  • 3关注人数
  • 390浏览人数
  • 最后回答于:2022-8-31 20:05
    请选择关闭问题的原因
    确定 取消
    返回顶部