| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 617 人关注过本帖
标题:新手求助:编程实现统计问题
取消只看楼主 加入收藏
lypvlxy
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-4-15
结帖率:66.67%
收藏
已结贴  问题点数:10 回复次数:1 
新手求助:编程实现统计问题
目的:分地市分科类统计“总成绩”表中各个分数的人数,并将其放入表A中
已知:总成绩表(zkzh,zcj),其中“zkzh”表示准考证号、“zcj”表示总成绩
      地市代码表(dsdm,dsmc),其中“dsdm”表示地市代码、“dsmc”表示地市名称
      科类代码表(kldm,klmc),其中“kldm”表示科类代码,“klmc”表示科类名称
解题思路:建立地市代码表和科类代码表作为循环条件,逐步求解后将结果合并
存在问题:现编程序如下,但是无法运行。刚开始学习vfp,不知如何修改……
求助:循环变量如何设置?如何把循环后的变量设为字段?
—————————————
set talk off
close all
clear
sele 1
sele distinct zcj from 总成绩表 into table A     &&从总成绩表中取出zcj的唯一值放入表A中
sele 2
use dsdmb          &&打开地市代码表
sele 3
use kldmb          &&打开科类代码表
sele 2
go top
do while .not. eof()
   ds=dsdm       &&从地市代码表中取出字段dsdm的值赋给变量ds
   sele 3
   do while .not. eof()      
       kl=kldm       &&从科类代码表中取出字段kldm的值赋给变量kl
       zdm=ds+kl     &&定义一个新变量zdm,它的值等于ds+kl,此处应是字符型变量
       select count(zcj)as rs&zdm,zcj from 总成绩 where subs(zkzh,1,2)=ds and subs(zkzh,5,1)=kl into cursor B   &&计算总成绩表中每个分数的人数,并将人数放到临时表B的“rs+zdm”字段中;此处的字段“rs+zdm”应该是可变的
       select A.zcj,B.rs&zdm from A left outer join B on A.zcj=B.zcj into cursor temptj    && 将表A和表B连接起来并将结果放到临时表temptj中      
       select zcj,rs&zdm from temptj into table A   &&用临时表temptj 替换表A      
       sele 3      
       skip        
    enddo   
    sele 2   
    skip
enddo
set talk on
———————————
热盼达人帮助,此处先行谢过!
搜索更多相关主题的帖子: 统计 
2010-05-06 18:05
lypvlxy
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-4-15
收藏
得分:0 
谢谢cnfarer大大!
您写的这段代码运行后的结果是:
ds kl zcj rs
01 1  0   234
01 1  1   1
01 1  2   0
    ……
01 3  0   123
01 3  2   1
    ……
想要的结果是:
zcj   rs011   rs013 ……
0      234     123  ……
1       1        0  ……
2       0        1  ……
      ……
再烦请您考虑下该如何实现。
2010-05-07 14:51
快速回复:新手求助:编程实现统计问题
数据加载中...
 
   



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

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