选择自定义下拉框值实现执行不同sql语句(sql里面还要带前面下拉框查询条件)根据最后一个下拉框执行

image.png

image.png

FineReport ufkiLRt9 发布于 2023-12-20 15:05 (编辑于 2023-12-20 15:35)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-12-20 15:07(编辑于 2023-12-20 15:59)

${if(rq='年',"select * from a where zd='"+rq+"'",if(rq='季度',"select * from b",if(rq='月',"select * from c","其他")))}

修改

${if(rq='年',"SELECT sum( `a`.`money` ) AS `销售合同金额`, b.user_name AS 负责人, DATE_FORMAT( a.field_24, '%m' ) AS QUARTER, '' month FROM contract_t a LEFT JOIN USER b ON a.field_2 = b.user_id WHERE a.deleted_at IS NULL AND a.type_id = '1' AND a.field_24 != '' AND a.field_2 != '' AND YEAR ( a.field_24 ) = YEAR ( CURDATE( ) )" + if(len(userId) == 0,"","and a.field_2 in '" + userId +"' ")+"GROUP BY a.field_2",if(rq='季度',"select * from b",if(rq='月',"select * from c","其他")))}

image.png

${if(rq='年',"SELECT sum( `a`.`money` ) AS `销售合同金额`, b.user_name AS 负责人, DATE_FORMAT( a.field_24, '%m' ) AS QUARTER, '' month FROM contract_t a LEFT JOIN USER b ON a.field_2 = b.user_id WHERE a.deleted_at IS NULL AND a.type_id = '1' AND a.field_24 != '' AND a.field_2 != '' AND YEAR ( a.field_24 ) = YEAR ( CURDATE( ) )" + if(len(userId) == 0,""," and a.field_2 in '" + userId +"' ")+" GROUP BY a.field_2","")}

image.png

补图

image.png

  • ufkiLRt9 ufkiLRt9(提问者) 我sql里面如果还要带前面下拉框查询条件呢
    2023-12-20 15:08 
  • 用户k6280494 用户k6280494 回复 ufkiLRt9(提问者) 拼接啊
    2023-12-20 15:11 
  • 用户k6280494 用户k6280494 回复 ufkiLRt9(提问者) 看修改
    2023-12-20 15:12 
  • ufkiLRt9 ufkiLRt9(提问者) 回复 用户k6280494 if rq =\'年\' 执行下面sql (大佬咋拼接) SELECT sum( `a`.`money` ) AS `销售合同金额`, b.user_name AS 负责人, DATE_FORMAT( a.field_24, \'%m\' ) AS QUARTER, \'\' month FROM contract_t a LEFT JOIN USER b ON a.field_2 = b.user_id WHERE a.deleted_at IS NULL ${if(len(userId) == 0,\"\",\"and a.field_2 in \" + userId +\" \")} AND a.type_id = \'1\' AND a.field_24 != \'\' AND a.field_2 != \'\' AND YEAR ( a.field_24 ) = YEAR ( CURDATE( ) ) GROUP BY a.field_2
    2023-12-20 15:16 
  • 用户k6280494 用户k6280494 回复 ufkiLRt9(提问者) 看修改后的
    2023-12-20 15:20 
最佳回答
0
snrtuemcLv8专家互助
发布于2023-12-20 15:08

这个模式

if(控件=="年","sql1",if(控件=="季度","sql2","sql3"))

  • ufkiLRt9 ufkiLRt9(提问者) 我sql里面如果还要带前面下拉框查询条件呢
    2023-12-20 15:08 
  • snrtuemc snrtuemc 回复 ufkiLRt9(提问者) 一样,你可以拼接sql语句,这个只是简单示例
    2023-12-20 15:10 
  • 2关注人数
  • 388浏览人数
  • 最后回答于:2023-12-20 15:59
    请选择关闭问题的原因
    确定 取消
    返回顶部