回 帖 发 新 帖 刷新版面

主题:在线等!sql查询语句的问题!

假如我的表中有50个学生  分别有 数学成绩   英语成绩 和 语文成绩
请问怎么样写sql语句可以分别实现
1. 查找50个学生中总分最高的一个人
2. 查找50个学生中总分最低的一个人
3. 查找50个学生中总分最低的一个人

高手指点!谢谢!

回复列表 (共3个回复)

沙发

这要看你的表结构,比如可能是
1.
select top 1 from 表 order by 数学成绩+英语成绩+语文成绩 desc
2.
select top 1 from 表 order by 数学成绩+英语成绩+语文成绩
3.
与2相同

板凳

select s#
fron s
group by s#
having count(grade)>=all(select count(grade)
                               fron s
                              group by s#);
看看我写的!

3 楼

我想让它显示多条记录但,它只显示一条要怎么改啊?
或改成显示查询出来的最新的第二条,或者第三条怎么改啊???

<%
'消防英模=消防英模
SQL = "Select top 5 IDD,XFK_NEWS_BT,XFK_NEWS_NR,XFK_NEWS_BTTP,XFK_NEWS_SJ From XFK_NEWS Where XFK_NEWS_FL = '消防英模=消防英模' Order By XFK_NEWS_SJ DESC"
Rs.Open SQL,Conn
While Not Rs.Eof
   Response.Write "<table><tr><td><a href=""show_news.asp?idd=" & Rs("IDD") & "&bt=消防英模—>消防英模"" target=""_blank"">"" & LimitStr(Rs("XFK_NEWS_BT"),30) & ""</a></td></tr><tr><td><a href=""show_news.asp?idd=" & Rs("IDD") & "&bt=消防英模—>消防英模"" target=""_blank"">" & LimitStr(Rs("XFK_NEWS_NR"),50) & "</a></td></tr></table>"
   Rs.MoveNext
Wend
Rs.Close
%>

我来回复

您尚未登录,请登录后再回复。点此登录或注册