select name, count(*) from grounp by namegroup by 分组键
就是依据谁进行分组
就是依据谁进行分组
解决方案 »
- 如何能够学好php??
- 求助打印日期段
- 如何将用户上传过来的图片该成统一大小?
- 本人是php菜鸟,然后做了一个答疑系统,有几个功能要用php代码实现,然后希望有一个懂代码的帮忙,奉送全部分
- thinkphp的session是怎么工作的呢???
- 最后一点分,请教一个入门问题
- 请问paypal是不是更新了 我的程式在结帐后出现错误 在线等
- dedecms进入后台出错
- 急!!!!nconf配置nagios,报错Someone else is already generating the configuration.
- 【wordpress】目录页如何按照目录层次依次输出文章列表?
- sublime text2标签页不显示问题
- 关于数组处理的问题,急
SELECT子句中的列名必须为分组列或列函数。列函数对于GROUP BY子句定义的每个组各返回一个结果。
某个员工信息表结构和数据如下:
id name dept salary edlevel hiredate
1 张三 开发部 2000 3 2009-10-11
2 李四 开发部 2500 3 2009-10-01
3 王五 设计部 2600 5 2010-10-02
4 王六 设计部 2300 4 2010-10-03
5 马七 设计部 2100 4 2010-10-06
6 赵八 销售部 3000 5 2010-10-05
7 钱九 销售部 3100 7 2010-10-07
8 孙十 销售部 3500 7 2010-10-06
例如,我想列出每个部门最高薪水的结果,sql语句如下:
SELECT DEPT, MAX(SALARY) AS MAXIMUM
FROM STAFF
GROUP BY DEPT
查询结果如下:
DEPT MAXIMUM
开发部 2500
设计部 2600
销售部 3500
解释一下这个结果:
1、满足“SELECT子句中的列名必须为分组列或列函数”,因为SELECT有GROUP BY DEPT中包含的列DEPT。
2、“列函数对于GROUP BY子句定义的每个组各返回一个结果”,根据部门分组,对每个部门返回一个结果,就是每个部门的最高薪水。
注意:计算的是每个部门(由 GROUP BY 子句定义的组)而不是整个公司的 MAX(SALARY)。
也就是如果要查询一个字段的总和,或者最小数,通俗一点就是做数据查询的时候就需要用 group by来从新组合我试过,比如要查询 select id,sum(dis) from 这样就会报错,
select id,max(dis) from 这个也会报错select id,max(dis) as name from 这个也会报错也就是如果用统计查询的字段必须要用 group by 来把统计查询出来的字段单独列一个字段出来,可以这样理解吗select id,max(dis) from group by dis 就是查询max(dis)查询的出来的值用 group by来重新命名一个列出来
group by 是分组的意思
有 group by 就按指定列的内容分组
没有 group by 就是全部记录算一组