| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 981 人关注过本帖
标题:查询记录的问题?
只看楼主 加入收藏
悠闲小鱼
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-18
结帖率:60%
收藏
已结贴  问题点数:20 回复次数:12 
查询记录的问题?
记录.rar (2.37 KB)

date: 20131005 start time: 10:45:16 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 10:45:19 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 10:50:04 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 10:50:06 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 11:08:25 file: 04C1_3号站签订成功.wav
date: 20131005 start time: 11:08:28 file: 04C1_3号站签订成功.wav
date: 20131005 start time: 11:52:59 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 11:53:02 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 11:59:27 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 11:59:29 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 12:18:40 file: 04B1_6号站签订成功.wav
date: 20131005 start time: 12:18:42 file: 04B1_6号站签订成功.wav
第一、想把重复的第二行删除。关键是时间不一样,不知道用什么方法。
第二、一个有六个签到点,如果其中一个没签到成功,怎么能查询出并输出记录。
这两个问题,本人没有设计思路。请各位大侠,给点建议,有程序代码参考就更好。
搜索更多相关主题的帖子: start 记录 file 
2013-11-07 20:46
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
以下是引用悠闲小鱼在2013-11-7 20:46:52的发言:


date: 20131005 start time: 10:45:16 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 10:45:19 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 10:50:04 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 10:50:06 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 11:08:25 file: 04C1_3号站签订成功.wav
date: 20131005 start time: 11:08:28 file: 04C1_3号站签订成功.wav
date: 20131005 start time: 11:52:59 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 11:53:02 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 11:59:27 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 11:59:29 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 12:18:40 file: 04B1_6号站签订成功.wav
date: 20131005 start time: 12:18:42 file: 04B1_6号站签订成功.wav
第一、想把重复的第二行删除。关键是时间不一样,不知道用什么方法。
第二、一个有六个签到点,如果其中一个没签到成功,怎么能查询出并输出记录。
这两个问题,本人没有设计思路。请各位大侠,给点建议,有程序代码参考就更好。
直接删除第二行不就行了吗
签到成功的标志是什么?

坚守VFP最后的阵地
2013-11-07 21:32
悠闲小鱼
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-18
收藏
得分:0 
第一问题,我已经解决了,用循还语句删除偶数行的。
这些显示的都是成功的。
如果数据中没有3号站签到成功的字样,就是漏签了,想找出来。
2013-11-07 21:40
悠闲小鱼
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-18
收藏
得分:0 
date: 20131005 start time: 10:45:16 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 10:45:19 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 10:50:04 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 10:50:06 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 11:08:25 file: 04C1_3号站签订成功.wav
date: 20131005 start time: 11:08:28 file: 04C1_3号站签订成功.wav
date: 20131005 start time: 11:52:59 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 11:53:02 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 11:59:27 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 11:59:29 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 12:18:40 file: 04B1_6号站签订成功.wav
date: 20131005 start time: 12:18:42 file: 04B1_6号站签订成功.wav
date: 20131005 start time: 13:25:39 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 13:25:41 file: 02C0_1号站签订成功.wav
date: 20131005 start time: 13:29:59 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 13:30:01 file: 02C1_2号站签订成功.wav
date: 20131005 start time: 14:33:04 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 14:33:07 file: 02B0_4号站签订成功.wav
date: 20131005 start time: 14:39:53 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 14:39:55 file: 03B0_5号站签订成功.wav
date: 20131005 start time: 14:59:40 file: 04B1_6号站签订成功.wav
date: 20131005 start time: 14:59:42 file: 04B1_6号站签订成功.wav
就看这样的数据,其中红色2和4之间就没有3号站签订成功的字样,怎么能把挑出来。

[ 本帖最后由 悠闲小鱼 于 2013-11-7 23:41 编辑 ]
2013-11-07 21:46
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
字符串中包含'3号站'字样
循环查找包含'3号站'的字符串

坚守VFP最后的阵地
2013-11-07 22:11
bccn0906
Rank: 9Rank: 9Rank: 9
来 自:广州
等 级:蜘蛛侠
威 望:2
帖 子:414
专家分:1183
注 册:2013-10-16
收藏
得分:0 
现才明白你的意思。

[ 本帖最后由 bccn0906 于 2013-11-8 08:59 编辑 ]
2013-11-07 22:52
bccn0906
Rank: 9Rank: 9Rank: 9
来 自:广州
等 级:蜘蛛侠
威 望:2
帖 子:414
专家分:1183
注 册:2013-10-16
收藏
得分:0 
现才明白你的意思,原来你所说的重复行是偶数行
SET DELETED ON
CREATE CURSOR t1 (str1 varchar(70))
SELECT t1
APPEND FROM d:\1\test\记录.TXT sdf
DELETE FOR not('签订成功' $ str1)
SELECT * FROM t1 INTO CURSOR t2 READWRITE
SELECT t2
DELETE ALL FOR RECNO()%2=0
SELECT t2
COPY TO d:\1\test\记录2.TXT sdf


[ 本帖最后由 bccn0906 于 2013-11-8 09:23 编辑 ]
2013-11-07 23:16
bccn0906
Rank: 9Rank: 9Rank: 9
来 自:广州
等 级:蜘蛛侠
威 望:2
帖 子:414
专家分:1183
注 册:2013-10-16
收藏
得分:20 
(修改一下)
SET DELETED ON
CREATE CURSOR t1 (str1 varchar(100))
SELECT t1
APPEND FROM d:\test\记录.TXT sdf
DELETE FOR not('签订成功' $ str1)
SELECT * FROM t1 INTO CURSOR t2 READWRITE
SELECT t2
DELETE ALL FOR RECNO()%2=0
SELECT t2
ZAP IN t1
i=0
GO TOP IN t2
SELECT t2
str3=ALLTRIM(str1)
SCAN
    i=i+1
    IF VAL(SUBSTR(t2.str1,48,1))<>i
        IF VAL(SUBSTR(t2.str1,48,1))<i &&后漏签
            str2=''
            FOR i2=i TO 6
                str2=str2+TRANSFORM(I2)+'、'
            ENDFOR
            str2=LEFT(str2,LEN(str2)-2)
            str2=ALLTRIM(str3)+'后 '+str2+'号漏签'
            INSERT INTO T1 (STR1) VALUES (str2)
            i=1
        ENDIF
        IF VAL(SUBSTR(t2.str1,48,1))>i &&前漏签
            str2=''
            FOR i2=i TO VAL(SUBSTR(t2.str1,48,1))-1
                str2=str2+TRANSFORM(I2)+'、'
            ENDFOR
            i=VAL(SUBSTR(t2.str1,48,1))
            str2=LEFT(str2,LEN(str2)-2)
            str2=ALLTRIM(t2.STR1)+'前 '+str2+'号漏签'
            INSERT INTO T1 (STR1) VALUES (str2)
        ENDIF
    ENDIF
    str3=ALLTRIM(t2.str1)
    IF i=6
        i=0
    ENDIF
    SELECT t2
ENDSCAN
SELECT t1
COPY TO d:\漏签记录.TXT FIELDS str1 sdf


[ 本帖最后由 bccn0906 于 2013-11-8 11:14 编辑 ]
收到的鲜花
  • tlliqi2013-11-08 10:26 送鲜花  10朵   附言:可行
2013-11-08 10:11
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
回复 8楼 bccn0906
可行
2013-11-08 10:26
bccn0906
Rank: 9Rank: 9Rank: 9
来 自:广州
等 级:蜘蛛侠
威 望:2
帖 子:414
专家分:1183
注 册:2013-10-16
收藏
得分:0 
(修改后,之前没考虑后漏签情况)
SET DELETED ON
CREATE CURSOR t1 (str1 varchar(100))
SELECT t1
APPEND FROM d:\记录.TXT sdf
DELETE FOR not('签订成功' $ str1)
SELECT * FROM t1 INTO CURSOR t2 READWRITE
SELECT t2
DELETE ALL FOR RECNO()%2=0
SELECT t2
ZAP IN t1
i=0
GO TOP IN t2
SELECT t2
str3=ALLTRIM(str1)
SCAN
    i=i+1
    IF VAL(SUBSTR(t2.str1,48,1))<>i
        IF VAL(SUBSTR(t2.str1,48,1))<i &&后漏签
            str2=''
            FOR i2=i TO 6
                str2=str2+TRANSFORM(I2)+'、'
            ENDFOR
            str2=LEFT(str2,LEN(str2)-2)
            str2=ALLTRIM(str3)+'后 '+str2+'号漏签'
            INSERT INTO T1 (STR1) VALUES (str2)
            i=1
        ENDIF
        IF VAL(SUBSTR(t2.str1,48,1))>i &&前漏签
            str2=''
            FOR i2=i TO VAL(SUBSTR(t2.str1,48,1))-1
                str2=str2+TRANSFORM(I2)+'、'
            ENDFOR
            i=VAL(SUBSTR(t2.str1,48,1))
            str2=LEFT(str2,LEN(str2)-2)
            str2=ALLTRIM(t2.STR1)+'前 '+str2+'号漏签'
            INSERT INTO T1 (STR1) VALUES (str2)
        ENDIF
    ENDIF
    str3=ALLTRIM(t2.str1)
    IF i=6
        i=0
    ENDIF
    SELECT t2
ENDSCAN
SELECT t1
COPY TO d:\漏签记录.TXT FIELDS str1 sdf


2013-11-08 11:24
快速回复:查询记录的问题?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.068354 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved