由浅入深学MYSQL之–MySQL分组查询详解

yizhihongxing

前言

从今天开始本系列文内容就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深, 全面讲解数据库体系。 非常适合零基础的小伙伴来学习。


全文大约 【1066】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配图,让你更好的理解和运用文中的技术概念,并可以给你带来具有足够启迪的思考......

一. 分组查询

分组这个概念各位小伙伴就可以理解成排队。例如:在学校操场上学员排队,不分组的情况下就是一队,里面既有男生也有女生。如果按照性别分组,那么就是男生排一队,女生排一队。这就是分组的概念。

这个例子各位小伙伴是否理解了呢?那我们接着看下面的内容:

语法:SELECT 列名 FROM 表名 WHERE 条件 GROUP BY 分组依据(列);

关键字 说明
GROUP BY 分组依据,必须在 WHERE 之后生效

各位小伙伴语法是否看懂了呢?下面健哥带大家实战一番吧,也顺便理解分组的使用。

1. 查询男女人数

#思路:
#1.先按照性别进行分组
#2.再针对各性别的人数进行统计
SELECT Ssex,COUNT(*) as 'sex_count' FROM student GROUP BY Ssex

由浅入深学MYSQL之--MySQL分组查询详解

2. 查询男女的平均年龄

#思路:
#1.按照性别进行分组
#2.针对年龄字段算平均值
SELECT Ssex,AVG(Sage) as 'sage_avg' FROM student GROUP BY Ssex

由浅入深学MYSQL之--MySQL分组查询详解

3.常见问题

# 查询男女的平均年龄
SELECT Ssex,AVG(Sage) as 'sage_avg' FROM student GROUP BY Ssex

注:分组查询中,select显示的列只能是分组依据列,或者聚合函数列,不能出现其他列。


二. 结语

最后在这里对本文核心要点进行总结:

  1. 分组查询其实就相当于排队,由原来的一队按照指定的列排成多个队列。需要各位小伙伴熟练掌握和理解使用。

  2. 在分组查询中SELECT关键字后面只能跟分组的列名或者使用聚合函数进行统计,写其他列名无效,并且查询出来的结果也没有意义,这点一定要注意哦。

  3. 分组GROUP BY后面可以是一个列名,也可以是多个,如果是多个列按照多个列先后顺序进行分组。

原文链接:https://www.cnblogs.com/qian-fen/p/17376012.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:由浅入深学MYSQL之–MySQL分组查询详解 - Python技术站

(0)
上一篇 2023年5月6日
下一篇 2023年5月6日

相关文章

  • MySQL常用慢查询分析工具详解

    MySQL常用慢查询分析工具详解 慢查询是指需要较长时间才能完成的查询,这种查询可能会导致系统负载过高,甚至在高并发场景下会引起系统宕机。因此,我们需要使用一些工具来优化慢查询,以提高系统的性能。在MySQL中,常用的慢查询分析工具有以下几种。 1. 慢查询日志 MySQL内置了慢查询日志,可以记录所有执行时间超过指定时限的SQL语句,并将其保存在日志文件中…

    MySQL 2023年5月19日
    00
  • MySQL查看表中的约束的4种方法

    MySQL中查看表中的约束有以下几种方法: DESC命令 使用DESC命令可以查看表的结构,包括所有的列和约束。 语法:DESC 表名; 示例: DESC students; SHOW CREATE TABLE命令 使用SHOW CREATE TABLE命令可以查看表的创建语句,其中包括所有的列和约束。 语法:SHOW CREATE TABLE 表名; 示例…

    MySQL 2023年3月9日
    00
  • centos6.9 安装mysql8

    centos6.9 安装 mysql8   # 安装mysql8 1.下载https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.16-2.el6.x86_64.rpm-bundle.tar 2.解压 tar -xvf mysql-8.0.16-2.el6.x86_64.rpm-bundle.tar rpm …

    MySQL 2023年4月12日
    00
  • mysql性能优化脚本mysqltuner.pl使用介绍

    MySQL是一种流行的关系型数据库,但是在实际应用中,我们可能会遇到性能瓶颈,需要对MySQL进行性能优化。而mysqltuner.pl这个脚本,则是一个非常常用的MySQL性能优化小工具。本篇攻略将详细介绍mysqltuner.pl的使用步骤,以及如何根据mysqltuner.pl的结果进行性能优化。 1. 安装mysqltuner.pl脚本 首先,需要在…

    MySQL 2023年5月19日
    00
  • MySQL — 单行函数

      大小写控制函数 SELECT LOWER(‘HelloWrold’), UPPER(‘HelloWorld’);   字符控制函数 SELECT REPLACE(‘abcdababab’,’p’,’m’); 将“abcdababab”中的字符p替换成m;   SELECT TRIM(‘ ‘ FROM ‘ HHHHHello.HHHWorldHHHHH ‘…

    MySQL 2023年4月13日
    00
  • 分析查询语句:EXPLAIN

    一、概述 使用mysqldumpslow工具定位到慢查询语句之后,可以使用explain或describe工具做针对性的分析查询语句。 MySQL种有专门负责优化SELECT语句的优化器模块:通过计算分析系统中收集到的统计信息,为客户端请求的Query提供他认为最优的执行计划。 这个执行计划展示了接下来具体执行查询的方式,比如多表连接的顺序是什么,对于每个表…

    MySQL 2023年4月25日
    00
  • MySQL8.0与MySQL5.7的区别详解

    MySQL 8.0 与 MySQL 5.7 的区别详解 MySQL 8.0 相对于 MySQL 5.7 ,在很多方面做了重大的更新和改进。下面详细讲解 MySQL 8.0 与 MySQL 5.7 的区别。 新增特性和功能 MySQL 8.0 版本增加了许多新的功能和特性,比如下面几个。 安全性 MySQL 8.0 增强了安全性,除了支持更多的密钥长度之外,还…

    MySQL 2023年5月18日
    00
  • MySQL复制出错 Last_SQL_Errno:1146的解决方法

    当MySQL复制过程中遇到“Last_SQL_Errno: 1146”这个错误时,通常是由于在slave服务器上找不到在master服务器上已存在的表导致的。以下是解决方法的完整攻略: 1. 确认master服务器和slave服务器都存在相同的表结构 在出现此错误之前,请确保您的master服务器和slave服务器都有相同的表结构。如果两台服务器的表结构不同…

    MySQL 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部