标题:vfp中把语文成绩按从高到低排序后,怎么把第50名学生的语文成绩查到并赋给变 ...
只看楼主
zkzcs
Rank: 2
等 级:论坛游民
帖 子:21
专家分:10
注 册:2005-9-25
得分:0 
以下是引用sdta在2012-3-1 11:47:17的发言:

I=0
GO TOP
SCAN
   I=I+1
   AAA=IIF(I=50,语文,0)
ENDSCAN
结果是0,为什么?
2012-03-01 13:24
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
得分:0 
排序后:
go 50
?语文

相互学习,互相交流,共同提高。
2012-03-01 15:19
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
以下是引用zkzcs在2012-3-1 12:51:48的发言:

感谢老师们的热心帮助可能我没把问题说清楚,浪费了大家时间,真是对不住了。
原先录入的数据没有排序,我用索引把语文成绩降序排列,我不想再列一名次字段。
相当于找出第50名的语文成绩,怎么办?
我是新手,请多指教,再次感谢老师们的无私帮助!
答案在8楼

坚守VFP最后的阵地
2012-03-01 15:46
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
以下是引用zkzcs在2012-3-1 13:24:45的发言:

结果是0,为什么?
因为你要的是第50名的语文成绩,如果不是第50名,变量AAA的值为0。

坚守VFP最后的阵地
2012-03-01 15:49
软件服务
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:344
专家分:736
注 册:2011-12-23
得分:0 
locate for 名次=50
AA=语文成绩
或者
SELECT TOP 1 语文成绩 FROM (SELECT TOP 50 语文成绩 FROM 成绩表 ORDER by 语文成绩) AAA ORDER by 语文成绩 DESC

为什么就一定要第50名啊,第50名好可怜
收到的鲜花
  • zkzcs2012-03-06 19:29 送鲜花  3朵  
2012-03-01 16:43
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
以下是引用软件服务在2012-3-1 16:43:15的发言:

locate for 名次=50
AA=语文成绩
或者SELECT TOP 1 语文成绩 FROM (SELECT TOP 50 语文成绩 FROM 成绩表 ORDER by 语文成绩) AAA ORDER by 语文成绩 DESC
为什么就一定要第50名啊,第50名好可怜
前面简单的代码,都弄不明白,朋友的代码,这位同学更看不懂。

坚守VFP最后的阵地
2012-03-01 17:37
xs591222
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:28
帖 子:680
专家分:1287
注 册:2009-3-1
得分:0 
楼主的意思,估计:应该是排序后第50个同学的语文成绩,不是第50名。

因为第50个有可能不是50名
2012-03-01 19:09
zkzcs
Rank: 2
等 级:论坛游民
帖 子:21
专家分:10
注 册:2005-9-25
得分:0 
谢谢老师们的热心帮助,问题终于解决了,可能是我太笨了。希望老师们多指教。
谢谢老师们不厌其烦的讲解,问题终于解决了,同时也明白许多问题.可能是我太笨了,看了老师们的讲解的才知道,我问的问题非常幼稚。这个论坛很热闹,老师也好,像这样的论坛真的是太少了。能成为其中一员我更是感到由衷的高兴,在这里学习涨知识哟,再次感谢老师们!

[ 本帖最后由 zkzcs 于 2012-3-1 19:34 编辑 ]
2012-03-01 19:11
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
以下是引用zkzcs在2012-3-1 19:11:53的发言:

谢谢老师们不厌其烦的讲解,问题终于解决了,同时也明白许多问题.可能是我太笨了,看了老师们的讲解的才知道,我问的问题非常幼稚。这个论坛很热闹,老师也好,像这样的论坛真的是太少了。能成为其中一员我更是感到由衷的高兴,在这里学习涨知识哟,再次感谢老师们!
有兴趣加入VFP群:QQ:208460253

坚守VFP最后的阵地
2012-03-01 19:44
zkzcs
Rank: 2
等 级:论坛游民
帖 子:21
专家分:10
注 册:2005-9-25
得分:0 
总结了几种方法
1.索引排序后skip 49可以。
2.生成临时表然后在临时表中go 50可以。
sele * from 成绩表 order by 语文 desc into cursor kk
go 50
a1=语文
不过用scan
end scan没测试成功。

[ 本帖最后由 zkzcs 于 2012-3-1 19:53 编辑 ]
2012-03-01 19:47



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




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

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