美文网首页
每日一练习(1)

每日一练习(1)

作者: 三人行大道 | 来源:发表于2019-05-27 16:31 被阅读0次
    https://blog.csdn.net/lzb348110175/article/details/90177520
    
    

    having,where,group by
    执行顺序
    where>聚合函数(sum,min,max,avg,count)>having

    select sum(score) from student  where sex='man' group by name having sum(score)>210
    
    注意事项:
    “Where” 是一个约束声明,使用Where来约束来之数据库的数据,Where是在结果返回之前起作用的,且Where中不能使用聚合函数。
    
    “Having”是一个过滤声明,是在查询返回结果集以后对查询结果进行的过滤操作,在Having中可以使用聚合函数。
    
    WHERE语句在GROUPBY语句之前;SQL会在分组之前计算WHERE语句。
    HAVING语句在GROUPBY语句之后;SQL会在分组之后计算HAVING语句。
    
    1、where 后不能跟聚合函数,因为where执行顺序大于聚合函数。 
    2、where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。 
    3、having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having 条件显示特定的组,也可以使用多个分组标准进行分组
    

    相关文章

      网友评论

          本文标题:每日一练习(1)

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