数据集写法

请教一下各位大佬,

有两个筛选框,筛选A筛选框的时候,筛选框B设置为不可筛选,并且展示数据集1的数据,

筛选B筛选框的时候,筛选框A设置为不可筛选,并且展示数据集2的数据,数据集1和2来源的表不同,但是最终展示的数据字段一致。请问有什么好的办法吗?

想到一个方法

select a,b,c from t1 where1=1 ${if(len(date)=0,""," and date = ('" + date + "') ")}

${if(len(code)<>0,""," and 1 = ('" + 2 + "') ")}

union all 

select a,b,c from t1 where1=1 ${if(len(code)=0,""," and code= ('" + code+ "') ")}

${if(len(date)<>0,""," and 1 = ('" + 2 + "') ")}

但是请教下,if(len(date)<>0时1=2在参数形式下应该怎么写?

FineReport yzm313451 发布于 2025-2-27 14:25 (编辑于 2025-2-27 15:27)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
华莉星宸Lv7专家互助
发布于2025-2-27 14:27(编辑于 2025-2-27 14:30)

要合并成一个筛选框

前面搞个单选复选框判断一下,后面的筛选框使用不同的数据集

--------

参考样式

image.png

  • yzm313451 yzm313451(提问者) 两个数据集有没有方法能写成一个数据集
    2025-02-27 14:36 
  • 华莉星宸 华莉星宸 回复 yzm313451(提问者) 如果来至不同的数据源可以使用 关联数据集 https://help.fanruan.com/finereport/doc-view-125.html
    是同一个数据源 直接union all
    2025-02-27 14:37 
  • yzm313451 yzm313451(提问者) 回复 华莉星宸 是同一个数据源,但是union all 好像满足不了,
    1 、select a,b,c from t1 where1=1 ${if(len(date)=0,""," and date = ('" + date + "') ")}
    2 、select a,b,c from t2 where1=1 ${if(len(code)=0,""," and code = ('" + code + "') ")}
    这边想要实现的是,如果筛选date筛选框 展示sql1的数据,sql2为空;如果筛选code筛选框,展示sql2的数据,sql1为空。展示的格式都一样。
    如果直接union all 的话,筛选date不筛选code的时候,数据集2岂不是相当于全都查了
    2025-02-27 14:44 
  • 华莉星宸 华莉星宸 回复 yzm313451(提问者) 你是要两个条件结合使用吧
    select a,b,c from t1 where1=1 ${if(len(date)=0&&len(code)<>0,""," and date = ('" + date + "') ")}
    2025-02-27 14:53 
  • 华莉星宸 华莉星宸 回复 yzm313451(提问者) 直接这样 ${if(len(date)<>0,""," and 1=2")}
    2025-02-27 15:34 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2025-2-27 14:26
最佳回答
0
wangzqLv3见习互助
发布于2025-2-27 14:43

你看这种行不

image.png

other.zip

  • 3关注人数
  • 94浏览人数
  • 最后回答于:2025-2-27 15:27
    请选择关闭问题的原因
    确定 取消
    返回顶部