日期控件,过滤出来的数据只是2020-10-210点的数据,不能过滤出来当天之后的数据。

日期控件,过滤出来的数据只是2020-10-21 0点的数据,不能过滤出来当天之后的数据。

可以设置选择 2020-10-21 就过滤出0点到23点59分59秒的去全部数据吗? 

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

你的日期字段应该是yyyy-MM-dd HH:mm:ss这种格式

sql可以有两种改法:

  1. 格式化日期(不同数据库写法不一样),SqlServer为例:

where convert(varchar(10),日期字段,23)='${日期参数}'

  2.筛选时间范围

where 日期字段 between '${日期}' and '${日期+" 23:59:59"}'


  • 备考FCRP 备考FCRP(提问者) 第一种方法不太明白,麻烦再讲下。 第二种方法可以实现,我数据库的创建日期字段是yyyy-MM-dd HH:mm:ss格式的。
    2020-10-21 10:20 
  • axing axing 回复 备考FCRP(提问者) 第一种方法就是把日期字段先格式成yyyy-MM-dd再去跟参数比较,我以为你只有一个日期参数,所以写了等于判断。你可以改成直接between开始日期和结束日期
    2020-10-21 10:26 
  • 备考FCRP 备考FCRP(提问者) 回复 axing 嗯好的 明白了
    2020-10-21 10:28 
最佳回答
0
maoningLv5初级互助
发布于2020-10-21 10:05

过滤把等于改成大于等于日期1+小于日期2

  • 备考FCRP 备考FCRP(提问者) 不想这样,比较麻烦。 只想调一下控件或者sql语句
    2020-10-21 10:07 
最佳回答
0
cherishdqyLv7高级互助
发布于2020-10-21 10:08

看一下你的sql的过滤条件怎么写的

  • 备考FCRP 备考FCRP(提问者) where a.create_date between \'${dbegin}\' and \'${dend}\'
    2020-10-21 10:09 
最佳回答
0
luckybaiLv4初级互助
发布于2020-10-21 10:10

改一下sql语句就好了,类似于这样:

and a.CREATED_TIME >= to_date('${startdate}', 'yyyy-mm-dd')

and a.CREATED_TIME < to_date('${enddate}', 'yyyy-mm-dd') + 1


  • 备考FCRP 备考FCRP(提问者) where 日期字段 between \'${日期}\' and \'${日期+\" 23:59:59\"}\' 这个写法好
    2020-10-21 10:21 
  • 6关注人数
  • 446浏览人数
  • 最后回答于:2020-10-21 10:11
    请选择关闭问题的原因
    确定 取消
    返回顶部