SQL组按功能混淆

时间:2014-06-13 07:02:12

标签: mysql-workbench

我是mysql的新手我想知道如何有效地使用group by功能来获取结果?请提供带有TIA连接的示例。

2 个答案:

答案 0 :(得分:0)

" group by"通常与计数一起使用。

将示例表视为

create table Country(state varchar(10),district varchar(10));

现在,假设你想找到"每个州有多少个地区"。我会使用查询。

select state,count(district) from Country group by state; 

答案 1 :(得分:0)

GROUP BY子句用于将聚合函数(其中count()只是其中之一)限制到某个范围。如果没有group子句,聚合将对表中的所有值进行操作(如果需要,还可以由WHERE子句确定)。分组首先将表/视图中的行拆分为由group子句确定的各个集合(所有这些条目属于具有相同值的一个组,由GROUP BY子句指定),然后将聚合应用于每个组。

示例:

假设您有一张包含人员,部门和收入的表格。您现在可以通过运行

确定所有收入(或最大或最小等)的总和
select sum(income) from people;

返回单个值:所有收入的总和。

对于各个部门,您可以对结果进行分组:

select department, sum(income) from people group by department;

这将返回与部门一样多的行以及每个部门的所有收入的总和。在此处阅读更多内容:http://dev.mysql.com/doc/refman/5.6/en/group-by-functions.html以及可能的聚合函数列表。

顺便说一下。不要让人们像#34这样的陈述混淆你;群体主要用于count()"这是完全错误的。