征求sql语句

tsyat 2008-12-17 06:57:36
一个表里有很多个人的成绩 然后我想把每个人的最好成绩都选出来
...全文
48 7 点赞 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hqaht 2008-12-18
补充一下我刚才发的帖子第二个方案的解决方法,我找到了答案,哈哈
求某几列中最大值
select greatest(col1,col2,col3...) from tablename;
求某几列中最小值
select least(col1,col2,col3...) from tablename;
  • 打赏
  • 举报
回复
babygehui 2008-12-18
select max(chengji) from tblname group by userid
  • 打赏
  • 举报
回复
hqaht 2008-12-18
如果你的表的成绩表是放在一个字段里的
像这样表aaa id(自增长主键) uid(用户id) chengji(成绩) kemu(科目)
类似这样的表结构的话那么使用max即可实现你的功能
比如:
select max(chengji) from aaa where uid = 666


如果你的表结构像这样
表bbb uid(用户id) chengji1(科目一成绩) chengji2(科目2成绩) chengji3(科目3成绩)
我暂时还不知道怎么写,另外我认为这样的表结构是不合理的
  • 打赏
  • 举报
回复
wwwwb 2008-12-18
贴记录及正确结果贴出来看看,应该可以解决
  • 打赏
  • 举报
回复
kfjfox 2008-12-18
同意3楼的
  • 打赏
  • 举报
回复
懒得去死 2008-12-17
http://blog.chinaunix.net/u/29134/showart_411484.html
  • 打赏
  • 举报
回复
sgtzzc 2008-12-17
select *
from 成绩表 t
where not exists(select * from tb where 姓名=t.姓名 and 成绩>t.成绩)


如果成绩表里没有姓名就用学号
  • 打赏
  • 举报
回复
相关推荐
发帖
MySQL
创建于2007-09-28

5.5w+

社区成员

MySQL相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-12-17 06:57
社区公告
暂无公告