要做一个设备运行时间统计的程序,其中要统计设备正常运行时间、待料时间、维修时间,可以按周或月进行统计,现在一直没想好数据库的结构,方便进行数据统计,哪位高手指点一下。

解决方案 »

  1.   

    简单说一下:1、至少分3个表,且在这儿只说一下这3个表吧:A、设备表;B、运行记录表;C、运行汇总表;2、表结构:A、设备ID,设备名称、当前实时状态;
       B、本表ID,日期,设备ID,状态,状态开始时间,状态结束时间,状态保持时长,操作员ID,操作时间;
       C、本表ID,日期,设备ID,正常运行时长,待料时长,维修时长;3、每日增加一个业务处理过程,即如“日终处理”或“操作员交接班”,你需要在这一过程处理时,对B表进行汇总,并将结果放入C表(当然这一过程操作员根本看不见);
    4、如果不可以像3那样增加业务处理,那么只能在设备状态发生改变时就对 C 表进行操作了;
    5、也可以不要 C 表,但是还是有 C 表后期统计比较方便!
      

  2.   

    我帮你一下吧
    acess
    日期
    select * from ta where fsrq between  # " & Format(DTPicker1.Value, "yyyy-M-dd") & " #   and    #" & Format(DTPicker2.Value, "yyyy-M-dd") & "#  "
    时间段 
    select * from ta where   djsj between  # " & Format(DTPicker6.Value, "yyyy-M-dd") & " " & Format(DTPicker5.Value, "hh:mm:ss") & "#   AND   #" & Format(DTPicker8.Value, "yyyy-M-dd") & " " & Format(DTPicker7.Value, "hh:mm:ss") & "#"mssql:
    日期如上
    时间段:
    select * from ta where 
    djzrq between  '" & Format(DTPicker1.Value, "yyyy-mm-dd") & "   " & Format(DTPicker2.Value, "hh:mm:ss") & "'   AND   '" & Format(DTPicker3.Value, "yyyy-mm-dd") & "   " & Format(DTPicker4.Value, "hh:mm:ss") & "'