使用报表组件FineReport如何根据时间间隔取数

 时间:2026-02-14 15:17:33

1、例如实现如下效果:

在starttime和endtime里面输入查询时间的范围,然后在number里面输入间隔数为3,意思就是每隔3秒的数据才显示出来。

使用报表组件FineReport如何根据时间间隔取数

2、增加数据集

新建工作簿,添加数据集ds1,SQL语句:

SELECT *,datediff(s,convert(varchar(100),datets,111),convert(varchar(100),datets,120))%${number} as jg FROM dbo.datetest where 1=1 ${if(len(starttime)==0,"","and CONVERT(varchar(100),datets,120)>='"+ starttime +"'")} ${if(len(endtime)==0,"","and CONVERT(varchar(100),datets,120)<='"+ endtime +"'")}

说明:datediff(s,convert(varchar(100),datets,111),convert(varchar(100),datets,120))%${number} as jg //DateDiff 函数可用来决定两个日期之间所指定的时间间隔数目.${number}这个是参数传过来间隔数。中间用%取模获取值为0的。${if(len(starttime)==0,"","and CONVERT(varchar(100),datets,120)>='"+ starttime +"'")} //判断一下如果starttime为空的时候查询所有时间,否则根据CONVERT(varchar(100),datets,120)>='"+ starttime +"'传过来参数进行筛选。

刷新参数,给number参数设置默认值为1。

3、表样设计

依据下图设置表样:

给B4添加过滤条件“jg等于 0”。

使用报表组件FineReport如何根据时间间隔取数

4、参数设计

点击参数界面面板,按照下图设置参数界面:

使用报表组件FineReport如何根据时间间隔取数

5、分页预览

点击分页预览,输入开始时间,结束时间,间隔数就可以查询了。

  • MyEclipse如何安装SVN
  • 如何使用Toad for Oracle连接oracle数据库
  • Ubuntu18.10系统安装及GPU配置
  • LINUX使用命令行导入sql数据
  • SecureCRT(英文版)怎么修改背景颜色和字体?
  • 热门搜索
    路由器排名 茶叶如何保存 新疆旅游景点大全 红鹦鹉鱼怎么养 如何报税 井冈山在哪里 青城山旅游路线 怀孕有痔疮怎么办 怎么打剑姬 如何瘦小腿