美文网首页
SQL中GROUP BY的学习理解

SQL中GROUP BY的学习理解

作者: Coder_Cat | 来源:发表于2018-07-03 15:06 被阅读13次
  • GROUP BY语句用于结合合计函数,根据一个或多个列对结果集进行分组。
    创建一个表并插入数据:
CREATE TABLE aatest(
id NUMBER(6,0),
username VARCHAR2(255),
num NUMBER(30,0)
) 
INSERT INTO aatest VALUES (1,'aa',2); 
INSERT INTO aatest VALUES (2,'aa',3); 
INSERT INTO aatest VALUES (3,'bb',4); 
INSERT INTO aatest VALUES (4,'cc',3); 
INSERT INTO aatest VALUES (5,'dd',4); 
INSERT INTO aatest VALUES (6,'dd',5);
INSERT INTO aatest VALUES (7,'ee',6); 
INSERT INTO aatest VALUES (8,'ee',7);
INSERT INTO aatest VALUES (9,'ee',6); 
创建表格数据.png
  • 单个关键字GROUP BY使用:
SELECT username
FROM aatest
GROUP BY username;
单个关键字GROUP BY使用.png
  • 现在我们要计算每个usernamenum和,可以结合聚合函数sum()使用:
SELECT username, sum(num) AS sumnum 
FROM aatest 
GROUP BY username;
结合聚合函数.png
即同一个username下的num求和。
  • 多个字段GROUP BY 就是把多个字段看成一个整体,多个字段记录完全一样才配合聚合函数一起计算。
SELECT username,avg(id)
FROM aatest
GROUP BY username,num;
多个字段` GROUP BY` .png

因为只有两条记录是一样的,所以这两条合成一条计算,整体少了一条数据。

相关文章

网友评论

      本文标题:SQL中GROUP BY的学习理解

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