参数如何返回sql片段,而不是值本身

按照基础教程,现在定义了ds1,里面的sql为
select * from a where 1=1 if(len(${para})=0,'',' and id>'+${para})
是可以在para不输的情况下,不参与条件构成的。
------------------------------
我在定义其他的数据源时,不断的用到这个sql片段: if(len(${para})=0,'',' and id>'+${para})


而且这个sql片段很长啊,能否实现定义个全局变量,当有填时,构建and id>${para}为返回结果,没填时返回空,这样我在数据源定义sql时就可以
select * from a where 1=1 ${para}即可?

这样相当于参数重用,比如我构建一个条件很多的界面,sql就可以写成
select * from a where 1=1
${按日期查询}
${按地区查询}
${按性质查询}
而不是
select * from a where 1=1
if(len(${按日期查询})=0,'',' and my_date>'+${按日期查询})
if(len(${按地区查询})=0,'',' and my_area='+${按地区查询})
if(len(${按性质查询})=0,'',' and my_kind>'+${按性质查询})

FineReportjalphi 发布于 2015-9-24 15:38
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
0
wzh5788发布于2015-9-24 15:52(编辑于 2023-9-6 09:34)
555
最佳回答
0
阿迪发布于2015-9-24 16:01(编辑于 2023-9-6 09:34)
555
  • jalphi jalphi(提问者)

    我在想能否自定义控件(引用相应的全局参数),然后在“编辑后”事件里,写这段代码
    var v=this.getValue();
    if (v!=\"\")
            this.setValue(\"and date(time_accept)<=\"+v);
    ---------------------------
    你觉得行不行?
    回复
    2015-09-24 17:07 
最佳回答
0
jalphi发布于2015-9-24 17:07(编辑于 2023-9-6 09:34)
555
最佳回答
0
白水先生发布于2015-9-25 15:31(编辑于 2023-9-6 09:34)
555
最佳回答
0
传说哥发布于2015-10-7 20:26(编辑于 2023-9-6 09:34)
555
最佳回答
0
静听禅鸣发布于2015-12-1 04:56(编辑于 2023-9-6 09:34)
555
  • 0关注人数
  • 890浏览人数
  • 最后回答于:2015-12-1 04:56
    活动推荐 更多
    热门课程 更多
    返回顶部