sql 查询各个班级的最高分和最低分,最高分与最低分为一列
如下:SQL:selectstudent,class,gradefromttstudentclassgrade------------------------------...
如下:
SQL:select student,class,grade from tt
student class grade
--------------------------------
A1 501 80
B1 501 70
C1 501 50
D1 501 90
A2 502 70
B2 502 60
C3 503 70
D3 503 80
A3 503 60
B3 503 90
要求查出的数据格式如下(最高分与最低分为一列,而不是2列)
student class grade
------------------------------------
C1 501 50
D1 501 90
B2 502 50
A2 502 70
A3 503 60
B3 503 90 展开
SQL:select student,class,grade from tt
student class grade
--------------------------------
A1 501 80
B1 501 70
C1 501 50
D1 501 90
A2 502 70
B2 502 60
C3 503 70
D3 503 80
A3 503 60
B3 503 90
要求查出的数据格式如下(最高分与最低分为一列,而不是2列)
student class grade
------------------------------------
C1 501 50
D1 501 90
B2 502 50
A2 502 70
A3 503 60
B3 503 90 展开
展开全部
追问
这Sql写的牛逼,第一次见有人这样写,赞一个!还有木有其他写法?
追答
取最大最小的值的语句都可以用not exist来写:
select * from tt a
where not exists ( select 1 from tt b
where b.class=a.class and b.grade<a.grade)
union all
select * from tt a
where not exists ( select 1 from tt b
where b.class=a.class and b.grade>a.grade)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询