美文网首页
mysql ORDER BY与GROUP BY的用法?@2021

mysql ORDER BY与GROUP BY的用法?@2021

作者: 鹰郡少年鹏 | 来源:发表于2021-12-19 19:48 被阅读0次

在查一组数据的时候报错提示GROUP BY,于是查了一下,GROUP BY与ORDER BY的区别?
GROUP BY使用某个字段去重
SELECT * 字段名1 FROM 表名 GROUP BY 字段名2;
ORDER BY使用某个字段排序,默认从大到小
SELECT * 字段名1 FROM 表名 ORDER BY 字段名2。

创建test databases table

1、groupby使用方法---对选择的列去除重复的项

eg:目前salary有几种情况?

select * from test group by salary;

2、orderby使用方法 -- 对选择的列进行排序

eg:对age从大到小排序

select * from test order by age desc;

eg:对name进行排序

select * from test order by name desc; 这样得到的并非是我们想要的结果


因为name的类型是varchar,不是数字类型,对于这种既有字符也有数字的情况怎么进行排序?

可以利用字符替换,获取后面的number进行排序:select *,replac(name,'person','') as t from test order by t+0 desc;


3、orderby与groupby混合使用

eg:如果想获取不同salary最新name的信息

select * from test group by salary;

并不是我们想要的信息,+ orderby name不影响筛选出来的结果,因为order by 是对上面结果进行排序,不能做到先排序后group

针对与我们想要先order再group的思想:select * from (select * from test order by id desc)as test1 group by salary


相关文章

网友评论

      本文标题:mysql ORDER BY与GROUP BY的用法?@2021

      本文链接:https://www.haomeiwen.com/subject/wnvofrtx.html