1.
go top
num=0
for i=1 to Reccount(表名)
if 分数 >= 80
  num=num+1  &&计数
endif
skip
Endfor

解决方案 »

  1.   

    第二问用
    select 课号 from 表名 distinct into cursor temp
    选出不重复的字段,然后分别用这些字段到原表中进行求总数(sum)和平均数()。
    具体方法,不想熬述,自己编对你更有好处!
      

  2.   

    1、 count for 分数 >= 80 to num
    2、select average(课程均分数) from 表名 group by 课号 into cursor temp
      

  3.   

    是这样的用sql语句,count 和select 即可。
      

  4.   

    xiaowei_2002(小魏!) ,想走就走?散分再说:)
    你的山太多了,我要努力得到三座大山,再推翻:)
      

  5.   

    foxpro 2.5 for dos 版本以上的select-sql  语句和Vfp是一样的。
    上面的大虾所给的就是对的。
    这是for dos 的具体格式:select [all | Distinct ] [<alias>.]<select_item>[as <column_name>]...  from <table> [<local_alias>],...
    [[into <destination>] | [to file <file> [additive] | to printer [prompt ] |to screen ]]  
    [where  <joincondition> ...] [and |or <filtercondition>...
    [group by <gruopcolumn>...
    [order by <order_item> [asc|desc]...
    大约这些你看下吧或者在帮助中查找一下。
      

  6.   

    "select name from gz1.dbf"
    为什么说我alias not found?
      

  7.   

    去掉.dbf试试,还有, gz1是当前目录下么,不是的话,要在前面加上路径
      

  8.   

    怪不得呢。foxbase2.1的容错机制较差。
    应该还是路径的问题。请使用SET PATH TO 指定搜索路径再试。或者直接在gz1前加上绝对路径。第1个问题: 不用再重复了。
    第2个问题:如果在foxbase中使用以上SQL语法可能不行。我想还是用笨办法:
    total on 课号 to temp fields 分数    && 计算出各科成绩的总分
    use temp
    replace all 分数 with 分数/课号数    && 课号数即全部科目数,要手工填上
    browse
    建议升级到forpro,你会喜欢的,不过VFP是面向对象的,需要下点功夫才行。
      

  9.   

    Oh, Sorry.
    Foxbase2.1不支持SQL:select语法的,它把你的select name from gz1.dbf 中的name 当成数据表了,所以找不到的。不要这样费事了。
      

  10.   

    请问foxpro支持SQL:select语法吗?谢谢!
      

  11.   

    VFP当然支持,foxpro难说。不过FoxPro与Visual FoxPro(目前最高版本是7.0)有本质的不同,视你的情况而选吧,后者是面向对象的编程方式。VFP比foxpro具有更多先进的功能。
      

  12.   

    我这有foxpro2.5b for dos 的程序很小的不到2M,
    可以发给你如需要。