id name grade
1 小明 90
2 小刚 88
3 小红 100
4 小明 100
5 小刚 90
6 小红 80我要查出这个效果: 3 小红 100
4 小明 100
5 小刚 90
-----------------------------------------------------------------
1 小明 90
2 小刚 88
6 小红 80
------------------------------------------------------------------
也就是说,每个人的分数最高的排一起,第2高的排一起,依次类推 order by grade? 如果小明的分数排的2的比其他人第一的高就不对了
1 小明 90
2 小刚 88
3 小红 100
4 小明 100
5 小刚 90
6 小红 80我要查出这个效果: 3 小红 100
4 小明 100
5 小刚 90
-----------------------------------------------------------------
1 小明 90
2 小刚 88
6 小红 80
------------------------------------------------------------------
也就是说,每个人的分数最高的排一起,第2高的排一起,依次类推 order by grade? 如果小明的分数排的2的比其他人第一的高就不对了
解决方案 »
- java连接数据库mysql时候出现错误求解决
- 用myeclipse8.5自己生成的DAO可以直接使用吗?
- 达人们,帮帮小弟吧,在线等,请不吝赐教
- 整蒙了。。。JBOSS区还有个...
- Unable to load config class org.apache.struts2.jsf.FacesSetupInterceptor at interceptor
- 关于服务器与部署问题,各位高手,帮帮急?
- 请教各位老师,有没有使用resin2.1.6+struts的老师呀,帮忙显示一个web.xml的内容我的出错
- 关于hibernate中的一个api函数的用法及含义??
- 请教下拉框初始化的一个问题,高手进!
- 这样的表关系在jdo中怎么表示
- 按着正确的(基于ssh)工程修改后发生404错误,代码贴出求帮助!
- ActionForward(String name,String path,boolean redirect)name的作用
是不是还有个"科目"字段啊
小明两个grade什么意思
id name grade
1 小明 90
2 小刚 88
3 小红 100
4 小明 100
5 小刚 90
6 小红 80
所有学生的考试成绩都录到user表里,里面装了N次的考试成绩(也就是hllfl
说的为什么小明有2个grade) 我要的结果是查询小明,小红,小刚所有考试中最高分,第2高,第3高....直到第N高:我要查出这个效果:
最高分:
3 小红 100
4 小明 100
5 小刚 90
--第2高分------------------------------------------------------------
1 小明 90
2 小刚 88
6 小红 80
public int compare(User u1,User u2){
return u2.getGrade() - u1.getGrade();//排倒序
}
};
Map<String,List<User>> users = new HashMap<String,List<User>>();
//key 为用户名,list 是每个相同用户名的n个实体
int index = 1;
int length = users.values().iterator().next().size();
for(;index<=length;index++){
System.out.println("-------------第"+index+"高分----------");
for(String key;users.keySet()){
User user = users.get(key).get(index);
System.out.println(user.getId()+"\t"+user.getName()+"\t"+user.getGrade());
}}有可能会有语法错误,调试时适当修改即可。
select count(*) from Test001
where Test001.name=x.name and
Test001.id<>x.id and
Test001.grade>=x.grade) as row
from (select id,name,grade from Test001) as x
order by row;
要是想从低到高可是把 Test001.grade>=x.grade 变为 Test001.grade《=x.grade
要是想从低到高可是把 Test001.grade>=x.grade 变为 Test001.grade《=x.grade