| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3588 人关注过本帖
标题:关于排名问题
只看楼主 加入收藏
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用baichuan在2016-2-25 16:48:33的发言:

我说的不明白?就是说现在排名有 1 1 3 4 5 或者是 12225 这种情况,我怎么提前三名啊?

我现在是loca for pm=1 然后赋值,可是这只能找出一个啊!!!!



举个极端的例子  那5个人都得100分  全部第一名  你如何从中提取3个呢  除非还有其他条件  否则 no

DO IT YOURSELF !
2016-02-26 10:06
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:3 
如果不考虑并列的情况,可以这样处理,按名次排序后生成一个新表,假如这个新表名称为:DDD
USE DDD
BROWSE FOR RECNO()<=3
这就是前三名的结果

如果考虑并列的情况,先取排列第三名的名次
GO 3
MC=名次
BROWSE FOR 名次<=MC
这就是并列前三名的结果


坚守VFP最后的阵地
2016-02-26 10:20
aaaaaa
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:796
专家分:937
注 册:2012-9-4
收藏
得分:1 
当有并列情况下,这个是人数优先、还是名次优先的问题,理解了后,后面的解题随便做。

名次优先:Select ... Where 排名 <= 3 Order By 排名
人数优先:Select ... Top 3 ... Order By 排名


民工子弟学校22班团小组长阳光模特队长冲锋篮球队前锋小苹果合唱队领唱蓝天舞蹈队编舞
2016-02-26 10:33
baichuan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:37
帖 子:953
专家分:589
注 册:2006-3-13
收藏
得分:0 
晕了,我不是要排序啊,我是要取前三名啊!

就是
第一名 X  X  X。。。。。
第二名 X  X  X。。。。。。
第三名 X  X  X。。。。

想要简单点儿的,在报表里体现出来,不是整到一个表里去!

2016-02-26 11:15
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用baichuan在2016-2-26 11:15:45的发言:

晕了,我不是要排序啊,我是要取前三名啊!

就是
第一名 X  X  X。。。。。
第二名 X  X  X。。。。。。
第三名 X  X  X。。。。

想要简单点儿的,在报表里体现出来,不是整到一个表里去!

可以举个例吗?
2016-02-26 11:30
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
版主们要求你举个例,是为了理解,说明楼主的问题描述欠清楚,也可能是楼主不明白还有好多种状况

只求每天有一丁点儿的进步就可以了
2016-02-26 12:50
whinda
Rank: 6Rank: 6
等 级:贵宾
威 望:13
帖 子:253
专家分:418
注 册:2012-2-4
收藏
得分:0 
select * from table_name where 排名 in (1,2,3)
2016-02-26 13:06
baichuan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:37
帖 子:953
专家分:589
注 册:2006-3-13
收藏
得分:0 
晕,晕晕,我是想把该名次的姓名按顺序放到三个变量里,以备使用!如果第一名有两个 那么diyiming=姓名1+姓名2

2016-02-26 13:16
whinda
Rank: 6Rank: 6
等 级:贵宾
威 望:13
帖 子:253
专家分:418
注 册:2012-2-4
收藏
得分:13 
local No1[1],No2[1],No3[1]
select 姓名 from table_name where 排名=1 into array No1
......................................=2 into array No2
......................................=3 into array No3
2016-02-26 13:29
baichuan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:37
帖 子:953
专家分:589
注 册:2006-3-13
收藏
得分:0 
回复 19楼 whinda
哦,这样差不多!呵呵

2016-02-26 13:58
快速回复:关于排名问题
数据加载中...
 
   



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

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