标题:如何将locate for 找得的记录加入临时表
只看楼主
msding27
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-8-27
结帖率:100%
 问题点数:0 回复次数:12 
如何将locate for 找得的记录加入临时表
如何将locate for 找得的记录加入临时表??
哪位能给出代码吗??
谢谢了~~`
搜索更多相关主题的帖子: locate 记录 
2008-10-02 10:47
wzxc
Rank: 9Rank: 9Rank: 9
来 自:齐鲁大地
等 级:贵宾
威 望:39
帖 子:985
专家分:1296
注 册:2006-4-25
得分:0 
1、APPEND FROM 命令
   APPEND FROM FileName FOR lExpression

2、SCATTER 命令
   GATHER 命令

3、COPY TO ARRAY 命令
   APPEND FROM ARRAY 命令

认真看书学习,弄通Fox主义。
2008-10-02 11:41
msding27
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-8-27
得分:0 
但是具体的代码如何实现呢??
你能不能给个例子??
谢了~~
2008-10-03 13:28
ibmlang_002
Rank: 5Rank: 5
来 自:浙江-嘉兴
等 级:贵宾
威 望:18
帖 子:437
专家分:176
注 册:2008-8-30
得分:0 
具体代码帮助上有啊

VFP
2008-10-03 15:41
msding27
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-8-27
得分:0 
我是想用下面的代码从表tj中的记录按我的想法排序到表tj22中,但是下面的代码写入tj22中的
记录远远超出了应有的记录数,本来应该有640条记录的,但它有出了六千多条记录,我不知道是哪里错了,
哪位能看出来吗??附件我也放上来了,这些代码是在Command5中的。大家看了下面的代码和附件后应该知道我是想要什么结果吧。
也许不这样也能要得出这样的结果,能位有高见就帮一下我了~~
谢谢了~~


for i=1 to 4
 
   do case
       case i=1
       nianji='大一'
       case i=2
       nianji='大二'
       case i=3
       nianji='大三'
       case i=4
       nianji='大四'
  endcase    
        
              for t=1 to 2
            do case
             case t=1
             xingbie='男'
             case t=2
             xingbie='女'
            endcase
                
                               for h=1 to 20

                 for x=1 to 4

                do case
                 case x=1
                 daan='A'
                 case x=2
                 daan='B'
                 case x=3
                 daan='C'
                 case x=4
                 daan='D'
                endcas
        sele tj                
        locat for 年级='&nianji' and 性别='&xingbie' and 题号=h and 答案='&daan'
        if !eof()
          COPY TO ARRAY linshi
          sele tj22
                    APPEND FROM ARRAY linshi
                  else
                    INSERT INTO tj22 VALUES ('&nianji', h ,'&xingbie', '&daan',0)
        endif                    
                    
                endfor
            endfor
        endfor
endfor    
select tj22
brows

[[it] 本帖最后由 msding27 于 2008-10-4 09:25 编辑 [/it]]

tongji.rar (20.59 KB)
2008-10-03 23:56
nhygm888
Rank: 2
等 级:论坛游民
威 望:1
帖 子:186
专家分:42
注 册:2008-7-20
得分:0 
你要统计什么  看了半天没看明白  请详细说说 你要的 结果是什么样的
2008-10-04 06:19
ibmlang_002
Rank: 5Rank: 5
来 自:浙江-嘉兴
等 级:贵宾
威 望:18
帖 子:437
专家分:176
注 册:2008-8-30
得分:0 
楼主上面的代码乱七八糟
一条命令解决
SELECT nianji,xingbie,tihao,daan,count(*) as 人数 from tongji GROUP BY nianji,xingbie,tihao,daan ORDER  BY nianji,xingbie,tihao,daan

VFP
2008-10-04 07:31
msding27
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-8-27
得分:0 
我想要的结果是要把各年级各题各个选项男女分别有多少人数,虽然用7楼说的代码基本上能实现,但还不是我要的结果。首先用
SELECT nianji,xingbie,tihao,daan,count(*) as 人数 from tongji GROUP BY nianji,xingbie,tihao,daan ORDER  BY nianji,xingbie,tihao,daan
只能把有选择的记录显示出来,但有的记录却没有显出来,比如所有大一的男生在第一题时没有选A,那么“大一男生第一题选A”人数应该为0的这条记录就没有显示出来,
我就想再从查询结果中用循环把有记录的按一定的方式排出来,没有记录的也按一定的方式排出来记“人数”为0;
还有就是
SELECT nianji,xingbie,tihao,daan,count(*) as 人数 from tongji GROUP BY nianji,xingbie,tihao,daan ORDER  BY nianji,xingbie,tihao,daan
分组排列的是把大一放到大二大三大四的后面了,因为它是根据拼音首字母排的,所以我加了上些比较乱七八糟的代码让它按大一大二大三大四来排。

我是刚学VF的,所以用的代码看起来都是很乱~大家就指点一下啦~~~

[[it] 本帖最后由 msding27 于 2008-10-4 13:01 编辑 [/it]]
2008-10-04 09:28
ibmlang_002
Rank: 5Rank: 5
来 自:浙江-嘉兴
等 级:贵宾
威 望:18
帖 子:437
专家分:176
注 册:2008-8-30
得分:0 
建议你将表格结构改一下:字段nianji,xingbie,tihao,选择A,选择B,选择C,选择D。在输入数据时,将相关选择标1。这样的结构便于统计,也符合你的要求。
关于排序:在表格中建立一数值型字段,标志是那个年段,结果按该字段排序即可。

VFP
2008-10-04 12:22
nhygm888
Rank: 2
等 级:论坛游民
威 望:1
帖 子:186
专家分:42
注 册:2008-7-20
得分:0 
按大一大二大三大四来 我看你不是做了吗  加个字段 大一= 1  大二 =2。。。 按新加的字段排序不就 完了吗
2008-10-04 13:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-236100-1-1.html




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

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