-
-
wsn123 数据达人Lv4
发表于2021-11-1 15:41
悬赏1
已解决
楼主
使用起止日期后,怎么设置过滤条件为某个日期小于等于起止日期的最大值
例如:起止日期为指定日期,2021-9-15~2021-9-22
我得过滤条件设置为<#=mkfilter("TBL_ORDER_META.begin_time<=@qz_e")#>
计算后详细信息为:where (a.begin_time <= '2021年9月15日 - 2021年9月22日_e') 这要如何解决?
例如:起止日期为指定日期,2021-9-15~2021-9-22
我得过滤条件设置为<#=mkfilter("TBL_ORDER_META.begin_time<=@qz_e")#>
计算后详细信息为:where (a.begin_time <= '2021年9月15日 - 2021年9月22日_e') 这要如何解决?
最佳答案
6个回答
颜值区总司令 发表于 2021-11-1 15:53
我这边按照您的写法试了试,没有问题呀
我这个跟你这个不一样啊,你的<为什么是201709,没有具体到日?
我的数据begin_time在数据库是varchar格式,在过滤条件改为<#=mkfilter("STRTODATE(TBL_ORDER_META.begin_time,'yyyymmdd')<=@qz_e")#>
计算选择2021-9-1~2021-9-15
后计算得如下:
where (str_to_date(a.begin_time, '%Y%m%d') < str_to_date('20210916 00:00:00','%Y%m%d %H:%i:%s'))
怎么才能把qz_e和begin_time保持一致啊?
wsn123 发表于 2021-11-1 16:27
我这个跟你这个不一样啊,你的
您将@qz_e换成STRTODATE(@qz_e,'yyyymmdd'),就和STRTODATE(TBL_ORDER_META.begin_time,'yyyymmdd')格式一样啦
霸道妹子 发表于 2021-11-1 17:02
您将@qz_e换成STRTODATE(@qz_e,'yyyymmdd'),就和STRTODATE(TBL_ORDER_META.begin_time,'yyyymmdd')格式 ...
这样也不行,最后用的是<#=mkfilter("STRTODATE(TBL_ORDER_META.begin_time,'yyyy-mm-dd')<=@qz_e")#> 解决问题