关于数据库where和having的区别、group by 与having如何使用。

原创 2016年05月30日 16:11:08
--举例子说明:查询table表查询每一个班级中年龄大于20,性别为男的人数
select COUNT(*)as '>20岁人数',classid  from Table1 where sex='男' group by classid,age having age>20 
--需要注意说明:当同时含有where子句、group by 子句 、having子句及聚集函数时,执行顺序如下:
--执行where子句查找符合条件的数据;
--使用group by 子句对数据进行分组;对group by 子句形成的组运行聚集函数计算每一组的值;最后用having 子句去掉不符合条件的组。
--having 子句中的每一个元素也必须出现在select列表中。有些数据库例外,如oracle.
--having子句和where子句都可以用来设定限制条件以使查询结果满足一定的条件限制。
--having子句限制的是组,而不是行。where子句中不能使用聚集函数,而having子句中可以。
版权声明:本文为博主原创文章,未经博主允许不得转载。

SQL中where, group by, having的用法和区别

group by,where,having 是数据库查询中最常用的几个关键字。在工作中,时常用到,那么,当一个查询中使用了where ,group by ,having及聚集函数时 ,执行顺序是怎么样...

SQL HAVING用法详解

HAVING 子句对 GROUP BY 子句设置条件的方式与 WHERE 和 SELECT 的交互方式类似。WHERE 搜索条件在进行分组操作之前应用;而 HAVING 搜索条件在进行分组操作之后应用...
  • wozeze1
  • wozeze1
  • 2010年11月24日 09:48
  • 121881

数据库中group by和having语法使用详解

有个朋友问我一个返话费的问题,大概意思是这样的:只需把表deal中所有手机用户某天充值两次以上且总金额超过50的用户充值记录查询出来,至于怎么进行返话费那不是重点。 先看看group by的语法...
  • tjcyjd
  • tjcyjd
  • 2011年10月24日 18:18
  • 7821

group by, where, having的使用方法和之间区别

select 后的字段,必须要么包含在group by中,要么包含在having后的聚合函数里。(?) 1、group by是分组查询,一般group by是和聚合函数配合使用       gro...

HashMap,LinkHashMap和TreeMap的区别及适用范围

Map map = new TreeMap();   //TreeMap取出来的是排序后的键值对。但如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好         Map ma...

风靡职场的十大面试题!

体现求职者能力的就是面试,能不能拿到Offer,取决于你面试时的表现,只有有所准备才能在面试过程中游刃有余。笔者收集了10个面试官最爱提的问题,虽然题目千变万化,但是万变不离其宗,只要掌握了答题的技巧...

数据库where,group by,having使用原理分析

1.聚合函数时何时需要使用 group by  ?        在聚合函数之后一定要使用group by因为既然是聚合函数就一定是对一些记录进行了聚合,比如max,min,avg它们都是对于一定范围...

数据库 sql语句中where和having的区别 、having的使用、SQL中Group By的使用

having 和where 都是用来筛选用的 having 是筛选组 而where是筛选记录 他们有各自的区别 1》当分组筛选的时候 用having 2》其它情况用where ------...

MySQL数据库操作---group by、having、where、order by的使用

SUM函数用来求和、group by用来分组查询。一、建表、插入数据1、创建一个student表2、查看student表结构3、插入6条数据4、插入了6条数据后,我们可以发现自增数据(auto_inc...
  • will130
  • will130
  • 2015年11月12日 11:55
  • 2868

group by,where,having之间的区别和用法

having子句与where有相似之处但也有区别,都是设定条件的语句。在查询过程中聚合语句(sum,min,max,avg,count)要比having子句优先执行.而where子句在查询过程中执行优...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于数据库where和having的区别、group by 与having如何使用。
举报原因:
原因补充:

(最多只允许输入30个字)