[讨论] 请问两个抓取资料问题

楼主: regress   2014-05-18 20:11:08
大家好:
(一)
我有个数据库(EQ_Movement),机台每隔20~30sec会传当时的机台状况写入数据库;
其中EQ_Name是机台名称,EQ_Status是机台状态(若机台异常代号为1),
MV_Time是回传状态的时间
现在我若要统计当天某A类型的机台(如:EQ_Name 编号为A开头)各别发生
异常的总次数,请问该如何做?
(机台可能有A01,A02,A03....,且每个机台异常时间不等,但都各别算一次),
我希望整理出下表:
机台 NG次数
A01 4
A02 6
A03 2
我是捞出所有机台各别发生异常的总笔数
strSQL="SELECT EQ_Name,EQ_Status,count(*) as NG FROM EQ_Movement
where like EQ_Name like 'A%' andEQ_Status='1' group by EQ_Name "
但是这个总笔数有个问题,比如机台A01在AM9:05当机到AM9:08,
在数据库这其间的EQ_Status都是NG(1),可是我只想把它算成一笔资料,
有就是说同一个异常算成一笔
我的异常时间最多不会超过3分钟,请问有办法做大致的筛选吗?
(只要能尽可能接近真实的次数即可)
(二)
我要连的数据库有一个时间字段,他的格式如2014/5/18 19:54:30;
我想把同一分钟的资料视作同一个事件
所以我只想把这资料取出2014/5/18 19:54,不要秒数,我查过资料,
有教你如何取小时,分,秒的函数,可是要如何同时取出年,分,秒
THX
作者: ratt1213 (一腿踢死你)   2014-05-19 18:09:00
第一点,将所有资料写入一张表后,可写store procedure
作者: ratt1213 (一腿踢死你)   2014-05-19 18:10:00
来达成你要的运算,一般查询命令不行
作者: ratt1213 (一腿踢死你)   2014-05-19 18:11:00
第二点,可透过substring指令来撷取需要的部分再串一起即可

Links booklink

Contact Us: admin [ a t ] ucptt.com