SQL语句报表实现问题

微信图片_20230221085733.png

微信图片_20230221105552.png问题描述:表A:商铺ID,商铺名称。表B:日期,商铺ID,销售金额。

最后报表按商铺,把每天的销售体现出来,没有默认0.最多31天。

我现在用了一个笨办法,按天每天写一段查询共31段查询,再和表A去关连商铺ID,把金额取上去,请问有没有更简单,更优的实现方法。

FineReport ysbin 发布于 2023-2-21 09:03 (编辑于 2023-2-21 10:56)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-2-21 09:04(编辑于 2023-2-21 11:01)

1、数据库里面创建一个日期维度表

2、用函数生成日期表,然后通过过滤得到结果

MAPARRAY(RANGE(TODATE($开始时间),TODATE($结束时间)), FORMAT(item, "yyyy-MM-dd"))

image.png

image.png

image.png

  • ysbin ysbin(提问者) 数据库建一张只有日期字段就行了吗? 用函数生成日期表,过滤得结果,这个不太明白 最后怎么关连?感谢
    2023-02-21 09:26 
  • CD20160914 CD20160914 回复 ysbin(提问者) 新建日期维度表的话,就直接用日期字段关联就行了。我上面第二个方式是函数生成日期后,横向扩展,你再对数据集过滤让它等于日期就行了。其实创建日期维度表最简单,因为可以通用!!
    2023-02-21 09:27 
  • CD20160914 CD20160914 回复 ysbin(提问者) 设置好扩展方向 为横向。
    2023-02-21 10:56 
  • ysbin ysbin(提问者) 回复 CD20160914 日期维度表,建好了。在帆软里面怎么函数生成日期能做个示范吗?我补充了问题,是不是我公式操作不对
    2023-02-21 10:57 
  • CD20160914 CD20160914 回复 ysbin(提问者) 日期维度表的话,你直接用你的表关联数据就行了。如果要用公式,就按我说的直接横向扩展。我上面有截图。你的表创建了的话,用表关联就行了。
    2023-02-21 10:59 
  • 2关注人数
  • 256浏览人数
  • 最后回答于:2023-2-21 11:01
    请选择关闭问题的原因
    确定 取消
    返回顶部