数据库中having用法[通俗易懂]

数据库中having用法[通俗易懂]having经常与groupby和聚合函数(COUNT,SUM,AVG,MIN,orMAX)一起使用,用来过滤由GROUPBY语句返回的记录集。聚合函数通过作用于一组数据而只返回一个单个值,因此,在SELECT语句中出现的元素要么为一个聚合函数的输入值,要么为GROUPBY语句的参数,否则会出错。HAVING语句的存在弥补了WHERE关键字不能与聚合函数联合使用的不足。…

大家好,又见面了,我是你们的朋友全栈君。

having经常与group by和聚合函数(COUNT, SUM, AVG, MIN, or MAX)一起使用,用来过滤由GROUP BY语句返回的记录集。

聚合函数通过作用于一组数据而只返回一个单个值,因此,在SELECT语句中出现的元素要么为一个聚合函数的输入值,要么为GROUP BY语句的参数,否则会出错。

HAVING语句的存在弥补了WHERE关键字不能与聚合函数联合使用的不足。

语法:

SELECT column1, column2, … column_n, aggregate_function (expression)
FROM tables
WHERE predicates
GROUP BY column1, column2, … column_n
HAVING condition1 … condition_n;

同样使用本文中的学生表格,如果想查询平均分高于80分的学生记录可以这样写:

SELECT id, COUNT(course) as numcourse, AVG(score) as avgscore

FROM student

GROUP BY id

HAVING AVG(score)>=80;

在这里,如果用WHERE代替HAVING就会出错//where 的地方用到的数据是一组数据,不能是一个数

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/150487.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Jenkins学习一:Jenkins是什么?

    Jenkins学习一:Jenkins是什么?第一章Jenkins是什么?Jenkins是一个可扩展的持续集成引擎。主要用于:l持续、自动地构建/测试软件项目。l监控一些定时执行的任务。Jenkins拥有的特性包括:l易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。l易于配置-所有配置都是通过其提供的web界面实现。l集成RSS/E-mail通过RSS发布构建结果…

    2022年6月2日
    52
  • 【10】进大厂必须掌握的面试题-版本控制面试

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 Q1。什么是版本控制? 这可能是您在面试中最容易遇到的问题。我的建议是首先给出版本控制的定义。它是一个记录一段时间内…

    2021年6月23日
    86
  • .NET Core 的Generic Host 之Generic Host Builder

    .NET Core 的Generic Host 之Generic Host Builder通用Host(GenericHost)与webHost不同的地方就是通用Host解耦了Http请求管道,使得通用Host拥有更广的应用场景。比如:消息收发、后台…

    2022年10月12日
    2
  • python中删除列表中重复元素

    python中删除列表中重复元素在面试中,很可能遇到给定一个含有重复元素的列表,删除其中重复的元素,下边给出三种方法来实现这个功能。1.使用内置函数setlists=[1,1,2,3,4,6,6,2,2,9]lists=list(set(lists))先将列表转换为集合,因为集合是不重复的,故直接删除重复元素,而且输出结果为排序后的2.使用del函数或者remove函数lists=[1,1…

    2022年6月29日
    33
  • stm32实用技巧:JLINK接口定义和使用JTAG或SW下载程序「建议收藏」

    stm32实用技巧:JLINK接口定义和使用JTAG或SW下载程序「建议收藏」需求    stm32下载程序,实用JLink的JTAG下载座,分为实现JTAG的下载和SW的下载功能JTAG:可仿真,可下载SW:可仿真,可下载JLINK接口开发板接口JTAG模式20pins10pinsSWD模式Keil软件使用1.点开配置2.选择Debug3.选择J-LINK4.点击Settings5.选择方式(JTAGorSW,笔者强烈建议使用SW,包括后期开发调试程序下载4…

    2022年5月28日
    63
  • mysql截取字符串去重,mysql 截取字符串 去重 拼接

    mysql截取字符串去重,mysql 截取字符串 去重 拼接1:字符串截取LEFT(guid_,LENGTH(guid_)-5)//1001-1002-1003截取为1001-10022:判断是否存在某字符串中IN(‘1001′,’1002′,’1003’)//whereidin(xxxx)可以用查询的某个字段直接whereidin(selectidfromxxxx)3:根据某个字段去重复在查询结果中加入COUNT(DIS…

    2022年6月10日
    184

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号