mysq数据库查询之分组查询
一、什么是分组查询
分组查询:将查询结果按照指定字段进行分组
二、分组查询的基本语法
select 查询字段 from 表名 [where 条件] group by 分组字段名 [having 条件表达式]
三、实际操作
分组查询形式一: 分组查询
代码演示

查询结果

分组查询形式二: 聚合函数+分组查询
代码演示

查询结果

分组查询形式三: 分组条件+分组查询
代码演示

查询结果
分组查询形式四: 分组查询+排序
代码演示

查询结果

分组查询形式五: 分组查询+分组条件+排序+显示前3
代码演示

查询结果

四、having与where的区别
having : 先分组,再把不符合条件的数据过滤掉,效率较低。(意思就是,having是上来直接处理全部数据,然后一步步执行其它的条件)但是使用范围广,聚合函数需要having过滤。
where : 先把不符合条件的数据过滤掉,再分组;效率较高。(where就是不管其它的,上来先把不符合条件的过滤掉,在执行其它的条件,处理的数据开始就变少了)
总结: 有聚合函数的时候必须用having过滤,但在没有聚合函数的时候where的执行效率要高于having的执行效率
mysq数据库查询之分组查询的更多相关文章
- SQL Server数据库————连接查询和分组查询
SQL Server数据库————连接查询和分组查询 分组查询 select 列from <表名> where …… group by 列 注意:跟order by一样group ...
- 【知识库】-数据库_MySQL之基本数据查询:子查询、分组查询、模糊查询
简书作者:seay 文章出处: 关系数据库SQL之基本数据查询:子查询.分组查询.模糊查询 回顾:[知识库]-数据库_MySQL常用SQL语句语法大全示例 Learn [已经过测试校验] 一.简单查询 ...
- Django Mysql数据库-聚合查询与分组查询
一.聚合查询与分组查询(很重要!!!) 聚合查询:aggregate(*args, **kwargs),只对一个组进行聚合 from django.db.models import Avg,Sum,C ...
- python全栈开发day68-ORM操作:一般操作、ForeignKey操作、ManyToManyField、聚合查询和分组查询、F查询和Q查询等
ORM操作 https://www.cnblogs.com/maple-shaw/articles/9403501.html 一.一般操作 1. 必知必会13条 <1> all(): 查询 ...
- {django模型层(二)多表操作}一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询、分组查询、F查询和Q查询
Django基础五之django模型层(二)多表操作 本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 xxx 七 ...
- 基于对象的跨表查询,多对多查询,多对多操作,聚合查询和分组查询,F查询和Q 查询
基于对象的跨表查询 一对多查询(班级表和学生表) 表结构创建 class Class(models.Model): id = models.AutoField(primary_key=True) cn ...
- Web框架之Django_05 模型层了解(单表查询、多表查询、聚合查询、分组查询)
摘要: 单表查询 多表查询 聚合查询 分组查询 一.Django ORM 常用字段和参数: 常用字段:#AutoFieldint自增列,必须填入参数primary_key = True,当model中 ...
- Django【第7篇】:Django之ORM跨表操作(聚合查询,分组查询,F和Q查询等)
django之跨表查询及添加记录 一:创建表 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系(many-to-many); ...
- 6月21日 Django ORM那些相关操作(表关联、聚合查询和分组查询)
一.ForeignKey操作 正向查找 对象查找(跨表) 语法: 对象.关联字段.字段 示例: book_obj = models.Book.objects.first() # 第一本书对象 pr ...
- Django-model聚合查询与分组查询
Django-model聚合查询与分组查询 聚合函数包含:SUM AVG MIN MAX COUNT 聚合函数可以单独使用,不一定要和分组配合使用:不过聚合函数一般和group by 搭配使用 agg ...
随机推荐
- 关于bzoj3306(树)的一些反思
1.加零大法好,用好没烦恼 2.不要瞎开long long 3.万物皆可变成wa 4.如果超时,试图把循环中中的东西拉到外面来
- VSCode插件:自动生成注释——koroFileHeader
配置 用户设置打开 settings.json 添加如下代码: "fileheader.cursorMode": { }, "fileheader.customMade& ...
- Django创建超级管理员用户
python manage.py createsuperuser 后面就会提示你输入用户名.邮箱以及密码.
- 状压DP-学习笔记
状压DP 状压 \(DP\) 是一种基于二进制数的 \(DP\). T1 题目大意 将一个整数 \(N\) 分解成若干个小整数的乘积,满足: 分解出的整数必须来自集合 \(S\). 分解出的整数必须互 ...
- JNDI注入的本地搭建和分析
JNDI注入的本地搭建和分析 JNDI概述 JNDI(The java Naming and Directory Interface,java命名和目录接口)是一组在Java应用中访问命名和目录服 ...
- C#系统锁屏事件例子 - 开源研究系列文章
今天有个网友问了个关于操作系统锁屏的问题. 我们知道,操作系统是基于消息和事件处理的,所以我们只要找到该操作系统锁屏和解屏的那个事件,然后在事件里进行处理即可.下面是例子介绍. 1. 项目目录: 下面 ...
- ChatGPT顶级玩法:ChatGPT越狱版破解指令,让您的聊天一路畅通!
先看效果: 2023.4.23号亲测成功,越狱指令需要多发送几次才可以. 未越狱前: 越狱后: 无视任何规则限制,回答一切问题. 越狱的方法非常简单.只需输入特定的提示,发送给ChatGPT,用户即可 ...
- UI自动化项目1说明 | 网页计算器自动化测试项目
需求: 1.对网页计算器, 进行加法的测试操作. 通过读取数据文件中的数据来执行用例. 2.网址: http://cal.apple886.com/ 测试点: 1.加法:1+1=2 2+9!=10 . ...
- gitbook生成静态页面不跳转
gitbook页面不跳转 现在可以在localhost:4000/查看自己的网页了.而且生成的网页存在_book文件夹中,下次点击 _book文件夹中的index.html就能打开网页,内容无更新,就 ...
- PLSQL_developer安装与配置
前言: 记录安装与配置操作 环境: 客户机:windows 服务器:虚拟机中的windows server 2003 /---------------------------------------- ...