SELECT 列表:

矢量聚合。如果 SELECT 列表中包含聚合函数,则 GROUP BY 将计算每组的汇总值。这些函数称为矢量聚合。

Distinct 聚合。ROLLUP、CUBE 和 GROUPING SETS 支持聚合 AVG (DISTINCT column_name)、COUNT (DISTINCT column_name) 和 SUM (DISTINCT column_name) 。

WHERE 子句:

执行任何分组操作之前,SQL 会删除不满足 WHERE 子句中条件的行。

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

HAVING 子句:

SQL 使用 having 子句来筛选结果集内的组。

SELECT column_name, SUM(column_name1) AS column_name_1
FROM table_name
GROUP BY column_name
HAVING column_name > 10

ORDER BY 子句:

使用 ORDER BY 子句可以对结果集进行排序。GROUP BY 子句不能对结果集进行排序。

SELECT column_name, SUM(column_name1) AS column_name_1
FROM table_name AS table_name_1
GROUP BY column_name
ORDER BY column_name;

NULL 值:

如果组合列包含 NULL 值,则所有的 NULL 值都将被视为相等,并会置入一个组中。


GROUP BY和SELECT的一些总结:

如果在有group by的SQL操作中,select后面显示的结果集字段只有两种: 要么就只有group by后出现的字段,要么就是group by后出现的字段 + 聚合函数的组合(常用的五种聚合函数: min()求列中最小值 , max()求列中最大值 , avg()求平均值 , sum()求列中字段对应数值的总和 , count()求列的总条数)。

  

详解GROUP BY 如何与 SELECT 语句进行交互?的更多相关文章

  1. 详解MySQL第三篇—DCL语句

    DCL(Data Control Language)语句:数据控制语句,用于控制不同数据段直接的许可和访问级别的语句.这些语句定义了数据库.表.字段.用户的访问权限和安全级别.主要的语句关键字包括 g ...

  2. YDB基本使用详解(转)

    第七章YDB基本使用详解 一.如何与YDB对接(交互) 目前延云YDB提供如下几种方式 l命令行的方式 lWeb http接口的方式 lJDBC接口的方式 通过Java编程接入 通过可视化SQL分析统 ...

  3. Python基本语法_输入/输出语句详解

    目录 目录 前言 输入 raw_input input raw_input 和 input 的区别 输出 print print 基本格式化输出 print复杂格式化输出 flags标志位 width ...

  4. Elasticsearch java api 基本搜索部分详解

    文档是结合几个博客整理出来的,内容大部分为转载内容.在使用过程中,对一些疑问点进行了整理与解析. Elasticsearch java api 基本搜索部分详解 ElasticSearch 常用的查询 ...

  5. mysqlbinlog详解

    mysqlbinlog用于处理二进制日志文件的实用工具详解mysqlbinlog从二进制日志读取语句的工具.在二进制日志文件中包含的执行过的语句的日志可用来帮助从崩溃中恢复. binlog日志打开方法 ...

  6. sql server中部分函数功能详解

    1.TOP 子句 TOP 子句用于规定要返回的记录的数目. 对于拥有数千条记录的大型表来说,TOP 子句是非常有用的. SQL Server 的语法: SELECT TOP number|percen ...

  7. 浏览器解析html全过程详解

    前端文摘:深入解析浏览器的幕后工作原理 关于浏览器解析html全过程详解 输入URL到浏览器接收返回的数据的整个过程 TCP报文格式详解 IP报文格式详解 Linux IO模式及 select.pol ...

  8. java基础之JDBC一:概述及步骤详解

    1. JDBC的简介 概述: 就是Java用来操作不同数据库(DBMS)的类库(技术), 本质就是一些类和接口. /* 类: DriverManager 接口: Driver, Connection, ...

  9. mysql基础篇 - SELECT 语句详解

    基础篇 - SELECT 语句详解         SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...

  10. MySQL之SELECT 语句详解

    本文参考实验楼的SELECT 语句详解结合自己操作部分而写成. 注意:大多数系统中,SQL语句都是不区分大小写的,但是出于严谨和便于区分保留字和变量名,在书写的时,保留字应大写,而变量名应小写.所谓的 ...

随机推荐

  1. CSS+HTML+flexible.js+rem实现屏幕缩放适配概念原理解释

    首先理解几个概念: (1)屏幕尺寸:屏幕对角线的长度,一般用英寸表示,1英寸=2.54cm. (2)dp((或者叫dip):设备独立像素,也就是设备屏幕上多少个点. (3)dpi:印刷行业术语,像素密 ...

  2. 鸿蒙HarmonyOS实战-ArkUI组件(Button)

    一.Button Button(按钮)是一种常见的用户界面控件,通常用于触发操作或提交数据.Button 拥有文本标签和一个可点击的区域,用户点击该区域即可触发相应的操作或事件. Button 的主要 ...

  3. System.gc 之后到底发生了什么 ?

    本文基于 OpenJDK17 进行讨论 在 JDK NIO 针对堆外内存的分配场景中,我们经常会看到 System.gc 的身影,比如当我们通过 FileChannel#map 对文件进行内存映射的时 ...

  4. Avalonia的Window生命周期

    Avalonia中的Window 在Avalonia中,Window是一个基本的UI元素,它代表了一个应用程序的窗口.每个Window都可以包含其他的UI元素,如按钮.文本框等,并可以响应各种用户输入 ...

  5. hive窗口分析函数使用详解系列一

    1.综述 Hive的聚合函数衍生的窗口函数在我们进行数据处理和数据分析过程中起到了很大的作用 在Hive中,窗口函数允许你在结果集的行上进行计算,这些计算不会影响你查询的结果集的行数. Hive提供的 ...

  6. Java 内存分析(程序实例),学会分析内存,走遍天下都不怕!!!

    相信大多数的java初学者都会有这种经历:碰到一段代码的时候,不知该从何下手分析,不知道这段代码到底是怎么运行最后得到结果的..... 等等吧,很多让人头疼的问题,作为一名合格的程序员呢,遇到问题一定 ...

  7. 虚实相生,构建数智生活|HMS Core. Sparkle应用创新分论坛报名启动

    XR技术的发展,为用户带来了全新的体验模式.那么,作为支撑XR发展主要学科之一的图形学,将迎来哪些发展新机遇?移动应用开发者,该如何拥抱3D数字化转型? 7月15日,HDD·HMS Core. Spa ...

  8. 重新点亮linux 命令树————查看进程[二十一]

    前言 简单介绍一下进程. 正文 进程管理: 进程的概念与进程查看 进程的控制命令 进程的通信方式---信号 守护进程和系统日志 服务管理工具 systemctl SELinux 简介 进程概念: ht ...

  9. Pytorch-卷积神经网络CNN之lenet5的Pytorch代码实现

    先说一个小知识,助于理解代码中各个层之间维度是怎么变换的. 卷积函数:一般只用来改变输入数据的维度,例如3维到16维. Conv2d() Conv2d(in_channels:int,out_chan ...

  10. Cache Aside Pattern缓存+数据库读写模式的分析

    1.Cache Aside Pattern(1)读的时候,先读缓存,缓存没有的话,那么就读数据库,然后取出数据后放入缓存,同时返回响应 (2)更新的时候,先删除缓存,然后再更新数据库 2.为什么是删除 ...