如何根据下拉框的值,选择查询使用的表

2024-10-24 15-47-34-25.png时间跨度下拉框的值可以选择“12个月”“6个月”“3个月”“1个月”我想实现,如果选择“12个月”,那么下面的“校园卡余额前10名”查询的源表就是“12month_s007”;如果选择“6个月”,那么下面的“校园卡余额前10名”查询的源表就是“6month_s007”,以此类推。请问“校园卡余额前10名”这个查询要怎么写?我这样写会报错:

    SELECT * 

    FROM 

        CASE 

            WHEN ('${下拉框_时间跨度}') = '12个月' THEN  12month_s007

            WHEN ('${下拉框_时间跨度}') = '6个月' THEN  6month_s007

            WHEN ('${下拉框_时间跨度}') = '3个月' THEN  3month_s007

            WHEN ('${下拉框_时间跨度}') = '1个月' THEN  1month_s007

    END

 

FineReport yanleibuct 发布于 2024-10-24 15:51 (编辑于 2024-10-24 15:56)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
ID1208Lv6高级互助
发布于2024-10-24 15:54(编辑于 2024-10-24 15:55)

参数查询数据库表--https://help.fanruan.com/finereport/doc-view-3024.html

下拉框数据字典,显示值和实际值分开,实际值对应数据库表名

  • yanleibuct yanleibuct(提问者) 您好,想问下我这个数据字典,是选自定义吗?我这里应该和它这里的“公式”不一样吧?
    2024-10-24 16:17 
  • ID1208 ID1208 回复 yanleibuct(提问者) 可以自定义
    2024-10-24 16:22 
最佳回答
0
苏菲的供词Lv6中级互助
发布于2024-10-24 15:54(编辑于 2024-10-24 15:55)

方法1.case when 

方法2.${if(a="12个月","12month_s007",嵌套if)}

方法三.下拉框自定义数据字典,12个月对应12month_s007 数据集中直接from下拉框参数

最佳回答
0
用户k6280494Lv6资深互助
发布于2024-10-24 15:58(编辑于 2024-10-24 16:02)

SELECT * 

    FROM 

${SWITCH(下拉框_时间跨度,'12个月',"12month_s007",'6个月',"6month_s007",'3个月',"3month_s007",'1个月',"1month_s007")}

最佳回答
0
FR-LeonLv4初级互助
发布于2024-10-24 16:04

select * from 

${IF(下拉="12个月","12month_s007",IF(下拉="6个月","6month_s007",IF(下拉="3个月","3month_s007",IF(下拉="1个月","1month_s007","都不满足情况的表"))))}

最佳回答
0
Carl-TLv5见习互助
发布于2024-10-24 16:34(编辑于 2024-10-24 16:37)

用union 写:with t1 as (select *,'6个月' as type fron 6monthunion  select * ,'12个月' as typefron 6month)select * from t1where type = '${type}'参数type 是月份控件值

  • 6关注人数
  • 270浏览人数
  • 最后回答于:2024-10-24 16:37
    请选择关闭问题的原因
    确定 取消
    返回顶部