数据集参数if判断

请教下 怎么在数据集参数里面使用多重if语句,问帆软客户他就告诉我直接拼接,我TM知道怎么拼接还问?

源代码:
${if(len(ystr)==0 && len(yend)==0,""," AND MFG.YSBITM_0 IN (
SELECT ITMREF_0 FROM YOPPPJM WHERE 1=1
${if(len('"+ystr+"')==0,""," AND to_char(YJQ_0,'YYYY/MM/dd')>='"+ystr+"'")} 
${if(len('"+yend+"')==0,""," AND to_char(YJQ_0,'YYYY/MM/dd')<='"+yend+"'")} 
)")}


FineReport taoyang 发布于 2020-6-10 15:47
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
snrtuemcLv8专家互助
发布于2020-6-10 15:55

${if(len(ystr)==0 && len(yend)==0,""," AND MFG.YSBITM_0 IN (

SELECT ITMREF_0 FROM YOPPPJM WHERE 1=1"+

if(len(ystr)==0,""," AND to_char(YJQ_0,'YYYY/MM/dd')>='"+ystr+"'")+

if(len(yend)==0,""," AND to_char(YJQ_0,'YYYY/MM/dd')<='"+yend+"'")

)}

这个试一下

最佳回答
0
张洪威Lv6高级互助
发布于2020-6-10 15:51(编辑于 2020-6-10 15:51)

这样试试。

${if(len(ystr)==0 && len(yend)==0,""," AND MFG.YSBITM_0 IN (

SELECT ITMREF_0 FROM YOPPPJM WHERE 1=1)"}

${if(len(ystr)==0,""," AND to_char(YJQ_0,'YYYY/MM/dd')>='"+ystr+"'")} 

${if(len(yend)==0,""," AND to_char(YJQ_0,'YYYY/MM/dd')<='"+yend+"'")} 


最佳回答
0
卫九星Lv4初级互助
发布于2020-6-10 15:59(编辑于 2020-6-10 15:59)

${switch(ystr,'0','sql','1','sql','3','sql')} 

用switch试试

  • 4关注人数
  • 1851浏览人数
  • 最后回答于:2020-6-10 15:59
    请选择关闭问题的原因
    确定 取消
    返回顶部