首页 新闻 会员 周边

特殊点的问题

0
悬赏园豆:30 [待解决问题]

一张表里面有TerminalSign(唯一),FullOrEmpty(状态:0 or 1),GpsTime(GPS时间),等还有一些其它不太过于重要的字段,当状态处于0时每五秒产生一条数据;如第一条数据

TerminalSign:001,FullOrEmpty:0,GpsTime:2013/719 15:24:30 第二条数据则是:

TerminalSign:001,FullOrEmpty:0,GpsTime:2013/719 15:24:35以此类推直到状态到1时就会变成30秒产生一条数据,然后数据以此类推直到状态再次变成0;这样的话一天下来就会产生N条数据,我现在要做的就是把相同状态连续起来的数据组成一条新数据;如TerminalSign=001的,连续10条数据状态都是0的然后组成一条数据显示为TerminalSign,FullOrEmpty,starettime(取第一个状态为0的时间),endtime(取最后一个0也就是和1接近的那个 0的时间);特殊情况:如果0后面有1且接下来只有一个1接下来就是0的话就干掉这条数据;同样状态是1显示原理也一样;还有如果状态为0连续很久以后变成1然后1连续很久变成0那么后面0的开始时间是1最后那个1的结束时间;终上所述:用.net或者perl实现;求各位大神们帮帮忙;希望能来源码;别给我参考资料;我还是初级;不大看懂!谢谢!!!

听雨者的主页 听雨者 | 初学一级 | 园豆:44
提问于:2013-07-19 15:38
< >
分享
所有回答(2)
0

没看明白什么意思

小兵仔 | 园豆:1240 (小虾三级) | 2013-07-19 16:41
0

TerminalSign,FullOrEmpty,GpsTime,                

001      0      2013/719 15:24:30   

001      0      2013/719 15:24:35   

你这表里是联合主键(TerminalSign,FullOrEmpty,GpsTime)?

你要的结果是 TerminalSign:001 FullOrEmpty:0 starttime:2013/719 15:24:30 endtime: 2013/719 15:24:35 

你说的比较乱。。。我这样理解的对么。。。要么没法帮你解决

Nature Q | 园豆:342 (菜鸟二级) | 2013-07-19 17:30

对的!不过产生的不是几条;而是很多条;而且数据FullOrEmpty=0的状态连续的数据;和你说的基本差不多;求指教

支持(0) 反对(0) 听雨者 | 园豆:44 (初学一级) | 2013-07-22 09:03

TerminalSign  Longitude  Latitude  speed  direction  FullOrEmpty    GpsTime

086749301    1201129     30291     0          0               0           2013-07-12 14:40:12.00

TerminalSign  Longitude  Latitude  speed  direction  FullOrEmpty    GpsTime

086749301    1201129     30291     0          0               0           2013-07-12 14:40:12.05

TerminalSign  Longitude  Latitude  speed  direction  FullOrEmpty    GpsTime

086749301    1201129     30291     0          0               0           2013-07-12 14:40:12.10

TerminalSign  Longitude  Latitude  speed  direction  FullOrEmpty    GpsTime

086749301    1201129     30291     0          0               1           2013-07-12 14:40:12.15

TerminalSign  Longitude  Latitude  speed  direction  FullOrEmpty    GpsTime

086749301    1201129     30291     0          0               1           2013-07-12 14:40:12.45

 

上面是数据库,我现在要做的效果:

TerminalSign  Longitude  Latitude  speed  direction  FullOrEmpty    startTime

086749301    1201129     30291     0          0               1           2013-07-12 14:40:12.00

endtime

   2013-07-12 14:40:12.10

 

我要在TerminalSign相同 FullOrEmpty在同一状态( FullOrEmpty  0 or 1)且连续的情况下提取所需的数据汇成一条数据  并且显示!!!

支持(0) 反对(0) 听雨者 | 园豆:44 (初学一级) | 2013-07-22 09:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册