-
-
伶俐 数据达人Lv4
发表于2018-12-18 13:25
悬赏1
已解决
楼主
本帖最后由 伶俐 于 2018-12-18 13:28 编辑
各位大神,我在写sql数据源,使用宏的时候 报错了,可不可以帮我看一下,是不是我的表达式有问题,是写在where条件里面的
需求:在写sql数据源时,需要判断数据期,当用户什么都不选,@bbq=昨天,用户选择本月,@bbq=昨天,用户选择其他月,@bbq为月末
<#=if(@bbq="","DD.LOAD.DATE='"+od(@bbq,"d-1")+"'",if(left(@bbq,6)=left(od(today()),6),"DD.LOAD.DATE='"+od(@bbq,"d-1")+"'","DD.LOAD.DATE='"+od(@bbq,"d=lastday")+"'"))#>
各位大神,我在写sql数据源,使用宏的时候 报错了,可不可以帮我看一下,是不是我的表达式有问题,是写在where条件里面的
需求:在写sql数据源时,需要判断数据期,当用户什么都不选,@bbq=昨天,用户选择本月,@bbq=昨天,用户选择其他月,@bbq为月末
<#=if(@bbq="","DD.LOAD.DATE='"+od(@bbq,"d-1")+"'",if(left(@bbq,6)=left(od(today()),6),"DD.LOAD.DATE='"+od(@bbq,"d-1")+"'","DD.LOAD.DATE='"+od(@bbq,"d=lastday")+"'"))#>
12个回答
缱绻 发表于 2018-12-18 14:46
稍等我本地测试下
我刚刚又试了一下,用这个就可以了 ,谢谢你啊
where
DD.LOAD_DATE
=
case when '<#=@bbq#>' is null or '<#=@bbq#>' ='' or '<#=@bbq#>'='<#=left(od(today(),"d-1"),6)#>' then '<#=left(od(today(),"d-1"),8)#>' else '<#=od(@bbq,"d=lastday")#>' end