| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2826 人关注过本帖, 1 人收藏
标题:新人求助:如何实现按某一字段的值排名,且相同的值排名相同?
只看楼主 加入收藏
glheghhu
Rank: 1
等 级:新手上路
帖 子:24
专家分:3
注 册:2015-1-6
结帖率:66.67%
收藏(1)
已结贴  问题点数:20 回复次数:50 
新人求助:如何实现按某一字段的值排名,且相同的值排名相同?
各位大大:
         本人想对一张成绩表按总成绩排名,且相同的成绩排名相同,关将排名赋予新的字段,请问该怎么实现?

[ 本帖最后由 glheghhu 于 2015-1-9 15:28 编辑 ]
搜索更多相关主题的帖子: 成绩表 总成绩 如何 
2015-01-09 15:09
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
收藏
得分:5 
VFP9.0:

UPDATE 成绩表 SET 名次=b.名次 from (SELECT 总成绩,RECNO() 名次 FROM (SELECT distinct 总成绩 FROM 成绩表 ORDER BY 总成绩 DESC) a) b WHERE 成绩表.总成绩=b.总成绩
2015-01-09 15:36
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:26997
注 册:2012-2-5
收藏
得分:5 
回复 楼主 glheghhu
中式排名、美式排名

坚守VFP最后的阵地
2015-01-09 15:38
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:26997
注 册:2012-2-5
收藏
得分:0 
楼主接触VFP时间不长,建议学点VFP自身的编程方法。
SQL命令对于记录数上万的数据,运行速度不一定有VFP代码快

坚守VFP最后的阵地
2015-01-09 15:40
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:26997
注 册:2012-2-5
收藏
得分:0 
楼主的要求需要准备两套代码

坚守VFP最后的阵地
2015-01-09 15:50
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
收藏
得分:0 
记得以前有一贴子讨论过成绩排名问题,就是相同成绩的排名占排位号和不占排位号的情况

1。如:占排位号
成绩  名次
95     1
85     2
85     2
70     4

2。如:不占排位号
成绩  名次
95     1
85     2
85     2
70     3

我以上代码属是后一情况
第1情况如下代码
UPDATE 成绩表 SET 名次=(SELECT COUNT(*)+1 FROM 成绩表 B WHERE 成绩表.总成绩<B.总成绩)

可以参考这一贴子
https://bbs.bccn.net/thread-406735-1-1.html

[ 本帖最后由 kiff 于 2015-1-9 16:29 编辑 ]
2015-01-09 16:08
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:5 
以下是引用sdta在2015-1-9 15:40:27的发言:

 
SQL命令对于记录数上万的数据,运行速度不一定有VFP代码快

是不是测试过了?

授人以渔,不授人以鱼。
2015-01-09 21:25
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:26997
注 册:2012-2-5
收藏
得分:0 
回复 7楼 TonyDeng
测试过了
前几天帮别人替换数据,被替换表有记录38万,用VFP7秒搞定,SQL还在用进度条显示“查询”

[ 本帖最后由 sdta 于 2015-1-9 21:38 编辑 ]

坚守VFP最后的阵地
2015-01-09 21:28
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:5 
回复 8楼 sdta
厉害
2015-01-09 21:31
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
以下是引用kiff在2015-1-9 15:36:14的发言:

VFP9.0:

UPDATE 成绩表 SET 名次=b.名次 from (SELECT 总成绩,RECNO() 名次 FROM (SELECT distinct 总成绩 FROM 成绩表 ORDER BY 总成绩 DESC) a) b WHERE 成绩表.总成绩=b.总成绩
一句搞定
2015-01-09 21:31
快速回复:新人求助:如何实现按某一字段的值排名,且相同的值排名相同?
数据加载中...
 
   



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

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