数据集中使用公式的问题。

想通过if或者switch来根据一个值来执行不同的数据查询语句。

比如我想使用switch在数据集里我这样做

${=SWITCH($campus,'1','select * from aa','2','select * from bb')}但执行报数据集配置错误,不知道要怎么来写?

FineReport apengjun 发布于 2019-2-11 10:53
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
KerydiaLv5中级互助
发布于2019-2-11 11:19

select * from ${if(campus="1","aa","bb")}


用if  直接替换表就好了  if可以无限嵌套


select * from ${if(campus="1","aa",if(campus="2","bb","cc"))}

  • apengjun apengjun(提问者) 哦。。我其实是替换里面其中一个and 条件。campus是通过地址传值进来的。这个campus不用在前面加$么?
    2019-02-11 11:38 
最佳回答
0
ycming7474Lv2初级互助
发布于2019-2-11 11:37

SWITCH(F4,1,sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = 'Class1' ",3,1),2,sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = 'Class1' ",3,2),'3',sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = 'Class1' ",3,3))


根据不同的值,执行不同数据集的sql,“FRDemo”这个可以替换成其他数据集,可以同时执行不同数据集的。已测试正常使用。test.gif

  • apengjun apengjun(提问者) 我感觉数据集里不支持这种操作。也许我要换个思路。
    2019-02-11 12:23 
最佳回答
0
圣体叶小凡Lv6高级互助
发布于2019-2-11 14:06

image.png

${switch(sta,

1,"select  '1'  a  from dual ",

2," select '2'   a from  dual")

}


  • apengjun apengjun(提问者) 这种方式我再研究一下谢谢给的示例。
    2019-02-11 15:07 
最佳回答
0
flyingsnakeLv6资深互助
发布于2019-2-11 14:15

${=SWITCH($campus,'1','select * from aa','2','select * from bb')}

 

你的问题是,写了两个美元号,造成公式错误了。

去掉里边的美元号

 

${=SWITCH(campus,'1','select * from aa','2','select * from bb')}
  • apengjun apengjun(提问者) 确实是这样的。按1楼方式弄出来了。感谢提醒
    2019-02-11 15:08 
  • 6关注人数
  • 871浏览人数
  • 最后回答于:2019-2-11 14:15
    请选择关闭问题的原因
    确定 取消
    返回顶部