问个问题,关于分组后查询某个字段的最大值的最小值(用一条sql语句)

MySql 码拜 8年前 (2016-02-19) 1321次浏览
例如:现在表中有3个字段:id,score,name,,根据name分组然后查询出name同一个组中的最大值和最小值(同时查询出),用一条sql语句(例如mysql数据库)。有好的方法么?求指点。
解决方案

10

select * from (
select * from  (select  id,score,name from tb  group by name order by score desc )
union all
select * from  (select  id,score,name from tb  group by name  order by score)
)  as t
order by  t.name

本人整合下吧

3

SELECT name,  MAX(score) as maxs, MIN(score)  as mins  FROM tbl01 GROUP BY name

7

select tb.*
from 
(
select name,
       max(score) as max_score,
	   min(score) as min_score
from tb
group name
)t
inner join tb
on tb.name = t.name and (tb.score = t.max_score or tb.score = t.min_score)

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明问个问题,关于分组后查询某个字段的最大值的最小值(用一条sql语句)
喜欢 (0)
[1034331897@qq.com]
分享 (0)