之前做过这种设备运行时间报表,我们当时的思路是数据源表数据是按照分钟推送的,然后用kettle建立一个脚本五分钟一次 表输入sql类似这样
select sum(TIME ),设备名称 from(
select 设备名称, (case when A=1 AND B=1 AND C=1 THEN '5' ELSE '0' END ) AS TIME from table )a
group by a.设备名称 通过插入/更新或者表输出形成一张业务表,
这样每5分钟执行一次你就会得到五分钟累加一次的表 然后把这部分数据拿到帆软里面做处理换算成小时就可以得到每台设备的运行时间,由于这种表数据量会很大所以不会一次性汇总,要不kettle不一定能受得住,思路是这样的你可以通过你们的工具FDL也好 写存储过程调用也好来实现,当然也可以直接在帆软里面写sql只需要在嵌套一层就可以了,前提是服务器内存要够,要不影响查询速率 时间频率按照你们自己的实际情况把控,不一定非要和我这样五分钟一次.