| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3043 人关注过本帖
标题:求循环套循环,两个表相同字段比较
取消只看楼主 加入收藏
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
结帖率:100%
收藏
已结贴  问题点数:90 回复次数:6 
求循环套循环,两个表相同字段比较
各位老师好!
发过去3个表。我的想法是:
  用分列统计15期表里的N1字段的最后一行的值,与3d999个数表里的N1的值(1000个记录)逐个比较。相等的,在3d选个数表里的N1字段记1(1000行中有几个相等的就记几),不相等的记0.
  用分列统计15期表里的N2字段的最后一行的值,与3d999个数表里的N2的值(1000个记录)逐个比较。相等的,在3d选个数表里的N2字段记1(1000行中有几个相等的就记几),不相等的记0.
.........
  用分列统计15期表里的N190字段的最后一行的值,与3d999个数表里的N190的值(1000个记录)逐个比较。相等的,在3d选个数表里的N190字段记1(1000行中有几个相等的就记几),不相等的记0.

这是个循环套循环的程序。我只有大概思路。具体到写代码就不会了。恳请各位老师帮助。

3d选个数表里的3行记录,是我用select n1 from 3d999个数 where n1=xxx  执行190次,手工填上去的。每执行一次,n后面的数字和=后面的数字都得改动。

分列统计15期.zip (613.25 KB)

3d999个数.zip (20.56 KB)

3d9选个数.zip (1.49 KB)
搜索更多相关主题的帖子: 相等 字段 表里 个数 循环 
2021-06-05 09:53
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
收藏
得分:0 
回复 2楼 sdta
sdta老师你好!
代码看了。有不懂的地方,还要请教。
运行一下,结果是只有qihao在d3选个数表中有数字显示,n1到n190为空。不知为什么?
2021-06-05 13:11
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
收藏
得分:0 
回复 2楼 sdta
另外,我把zap清空命令前加了*,因为d3选个数表里的数据需累计,每一行的数据都要保存。
2021-06-05 13:16
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
收藏
得分:0 
回复 6楼 吹水佬
吹水佬老师,你好!
代码看了,也运行了。
但是,运行结果只显示为查询,并没有写在3d9选个数表的最后一行。能否请老师帮助,将运行结果写在3d9选个数表的最后一行。
这个结果需要一行一行积累,因此,3d9选个数表不能清空。谢谢。
2021-06-05 17:01
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
收藏
得分:0 
回复 5楼 sdta
d3选个数1.zip (1.46 KB)
2021-06-05 17:11
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
收藏
得分:0 
回复 9楼 吹水佬
老师好!
“结果在tmp临时表要放进“3d9选个数表”就 APPEND 进去”

我将程序的结尾改为:SELECT * FROM 3d9选个数

结果并没有在3d9选个数表里显示。3d9选个数里只显示原有的三行记录。

老师讲的“tmp放进3d9选个数”怎么放?在何处放?
2021-06-05 19:01
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
收藏
得分:0 
回复 10楼 sdta
sdta老师你好!

CLOSE DATABASES
t1 = SECONDS()
USE d3选个数 && 原名:3d9选个数
ZAP (我改动为*zap)
lcZd = ""
FOR lnj = 1 TO AFIELDS(azds)
    lcZd = lcZd + "," + azds[lnj, 1]
ENDFOR
lcZd = SUBSTR(lcZd, 2)
SELECT &lcZd FROM 分列统计15期 WHERE RECNO() = RECCOUNT() INTO ARRAY afl
USE
lcZd1 = SUBSTR(lcZd, 7)
SELECT &lcZd1 from d3_999个数 INTO CURSOR temp
INSERT INTO d3选个数 (Qihao) values(afl[1])
FOR lnj = 2 TO ALEN(afl)
    SELECT temp
    lc = FIELD(lnj - 1)
    COUNT TO nCnt FOR &lc = afl[lnj]
    REPLACE (lc) WITH nCnt RECORD 1 IN d3选个数
ENDFOR
? SECONDS() - t1
SELECT d3选个数

我将zap注释掉了,就出现上面的结果。将zap恢复后,在d3选个数表里显示的只是一行数据。
在分列统计15期增加一条记录,运行老师的程序,d3选个数里显示的只是增加的那一条记录的统计。
我的想法是d3选个数表里数据每一行都应该保留,以便观察和进一步统计。不知应该怎么改,请老师指教。
谢谢!
2021-06-05 20:08
快速回复:求循环套循环,两个表相同字段比较
数据加载中...
 
   



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

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