iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Mariadb聚合函数及分组查询怎么使用
  • 548
分享到

Mariadb聚合函数及分组查询怎么使用

2023-06-27 11:06:32 548人浏览 泡泡鱼
摘要

这篇文章主要介绍“Mariadb聚合函数及分组查询怎么使用”,在日常操作中,相信很多人在Mariadb聚合函数及分组查询怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Mariadb聚合函数及分组查询怎

这篇文章主要介绍“Mariadb聚合函数及分组查询怎么使用”,在日常操作中,相信很多人在Mariadb聚合函数及分组查询怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Mariadb聚合函数及分组查询怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

MariaDB Server 是最流行的开源关系型数据库之一。它由 MySQL 的原始开发者制作,并保证保持开源。它是大多数云产品的一部分,也是大多数linux发行版的默认配置。MariaDB 被设计为 Mysql 的直接替代产品,具有更多功能,新的存储引擎,更少的错误和更好的性能。

Mariadb聚合函数及分组查询怎么使用

聚合函数

当我们需要汇总表中的数据而不是使用表中某一行数据时,可以使用mysql为我们提供的聚合函数,在Mysql中,常用的聚合函数有以下五个:

  1. AVG:取平均值
  2. COUNT:取统计值
  3. MAX:取最大值
  4. MIN:取最小值
  5. SUM:取和值

获得表中人口的总和

MariaDB [world]> SELECT SUM(Population) FROM city;+-----------------+| SUM(Population) |+-----------------+|      1429559884 |+-----------------+1 row in set (0.01 sec)

获得数据表中中国的总人口

MariaDB [world]> SELECT SUM(Population) FROM city WHERE CountryCOde='CHN';+-----------------+| SUM(Population) |+-----------------+|       175953614 |+-----------------+1 row in set (0.00 sec)

查询中国有多少个城市

MariaDB [world]> SELECT COUNT(ID) FROM city WHERE CountryCode =  'CHN';+-----------+| COUNT(id) |+-----------+|       363 |+-----------+1 row in set (0.00 sec)

关于COUNT,如果要统计有该表有多少行,千万别用*作为参数,因为~影响性能,选某一列就好了。

查询中国人口最少的城市的人口是多少

MariaDB [world]> SELECT MIN(Population) FROM city WHERE CountryCode = 'CHN';+-----------------+| MIN(Population) |+-----------------+|           89288 |+-----------------+1 row in set (0.00 sec)

查询中国人口最多的城市的人口

MariaDB [world]> SELECT MAX(Population) FROM city WHERE CountryCode = 'CHN';+-----------------+| MAX(Population) |+-----------------+|         9696300 |+-----------------+1 row in set (0.00 sec)

查询河南各城市的平均人口

MariaDB [world]> SELECT AVG(Population) FROM city WHERE District ='Henan';+-----------------+| AVG(Population) |+-----------------+|     383278.3333 |+-----------------+1 row in set (0.00 sec)

所以,我们看到,聚合函数通常用于数值上的计算。

分组查询

以上,我们使用聚合函数时,是对所有SELECT的数据进行分组操作,假如我们想要查询所有国家的城市数,不得不多次使用WHERE对CountryCode进行筛选。

MariaDB [world]> SELECT DISTINCT CountryCode FROM city;+-------------+| CountryCode |+-------------+| ABW         || AFG         |...............| ZWE         |+-------------+232 rows in set (0.00 sec)

我们看到,在我们的数据表中,有232个国家,那么?是不是需要我们对这232个不同国家都使用一次COUNT(ID)才能统计每个国家的城市数量呢?其实不然。

我们可以使用分组查询GROUP BY,什么叫分组呢? 分组查询就是使用指定的一列或多列,对数据进行逻辑分组(当分组依据相同时被划分为一组),假设有如下数据:

MariaDB [world]> SELECT * FROM city LIMIT 5;+----+----------------+-------------+---------------+------------+| ID | Name           | CountryCode | District      | Population |+----+----------------+-------------+---------------+------------+|  1 | Kabul          | AFG         | Kabol         |    1780000 ||  2 | Qandahar       | AFG         | Qandahar      |     237500 ||  3 | Herat          | AFG         | Herat         |     186800 ||  4 | Mazar-e-Sharif | AFG         | Balkh         |     127800 ||  5 | Amsterdam      | NLD         | Noord-Holland |     731200 |+----+----------------+-------------+---------------+------------+5 rows in set (0.00 sec)

我们使用GROUP BY CountryCode就是指定CountryCode作为分组依据,所以1,2,3,4行他们被分为同一组,而5在另一个组。

  1. 通常分组是配合聚合函数来使用的,聚合函数对每个单独的逻辑分组进行汇总计算。
  2. GROUP BY子句中列出的每一列都必须是检索列或有效的表达式(但不能是聚合函数),如果在SELECT中使用表达式,则必须在GROUP BY子句中指定相同的表达式,且不能使用别名。
  3. 除聚合函数外,SELECT语句中的每一列都必须在GROUP BY子句中给出。
  4. 如果分组中包含具有NULL值的行,则NULL将作为一个分组返回。
  5. GROUP BY子句必须出现在WHERE子句之后,ORDER BY子句之前。

查询各个国家的城市数量

MariaDB [world]> SELECT CountryCode,COUNT(ID) FROM city GROUP BY CountryCode;+-------------+-----------+| CountryCode | COUNT(ID) |+-------------+-----------+| ABW         |         1 || AFG         |         4 |...........................| ZMB         |         7 || ZWE         |         6 |+-------------+-----------+232 rows in set (0.00 sec)

当SELECT语句中使用WHERE子句时,WHERE子句总在分组前进行过滤。

查询各个国家人口大于1000000的城市数量

MariaDB [world]> SELECT CountryCode,COUNT(ID) FROM city WHERE Population >= 1000000 GROUPP BY CountryCode;+-------------+-----------+| CountryCode | COUNT(ID) |+-------------+-----------+| AFG         |         1 || AGo         |         1 || ARG         |         3 || ARM         |         1 || AUS         |         4 |...........................| YUG         |         1 || ZAF         |         1 || ZMB         |         1 || ZWE         |         1 |+-------------+-----------+77 rows in set (0.01 sec)

所以在分组中未出现的国家,没有1000000人口的城市。

查询总人口大于1000000的国家有哪些

HAVING子句用于过滤分组后所得到汇总值的数据,而HAVING支持的操作和WHERE子句是相同的。

例如:

MariaDB [world]> SELECT CountryCode,SUM(Population) AS Total_Population FROM city GROUP BY CountryCode HAVING Total_Population > 1000000;+-------------+------------------+| CountryCode | Total_Population |+-------------+------------------+| AFG         |          2332100 || AGO         |          2561600 || ARE         |          1728336 |..................................| ZAF         |         15196370 || ZMB         |          2473500 || ZWE         |          2730420 |+-------------+------------------+108 rows in set (0.00 sec)

到此,关于“Mariadb聚合函数及分组查询怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Mariadb聚合函数及分组查询怎么使用

本文链接: https://www.lsjlt.com/news/309967.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Mariadb聚合函数及分组查询怎么使用
    这篇文章主要介绍“Mariadb聚合函数及分组查询怎么使用”,在日常操作中,相信很多人在Mariadb聚合函数及分组查询怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Mariadb聚合函数及分组查询怎...
    99+
    2023-06-27
  • SQL的聚合函数及分组查询
    SQL的聚合函数及分组查询 要在这个世界上获得成功,就必须坚持到底:至死都不能放手。 count select count(*) from students #底层优化了 select count(1) from...
    99+
    2017-02-04
    SQL的聚合函数及分组查询
  • Mariadb中聚合函数和分组函数怎么使用
    这篇文章主要讲解了“Mariadb中聚合函数和分组函数怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mariadb中聚合函数和分组函数怎么使用”吧!聚合函数当我们需要汇总表中的数据而...
    99+
    2023-06-28
  • MySQL 分组查询和聚合函数
    概述 相信我们经常会遇到这样的场景:想要了解双十一天猫购买化妆品的人员中平均消费额度是多少(这可能有利于对商品价格区间的定位);或者不同年龄段的化妆品消费占比是多少(这可能有助于对商品备货量的预估)。 这个时候就要...
    99+
    2022-05-24
    MySQL 分组查询 MySQL 聚合函数
  • 【MySQL】基本查询(插入查询结果、聚合函数、分组查询)
    目录 一、插入查询结果二、聚合函数三、分组查询(group by & having)四、SQL查询的执行顺序五、OJ练习 一、插入查询结果 语法: INSERT INTO tab...
    99+
    2023-09-25
    mysql
  • MySQL必备基础之分组函数 聚合函数 分组查询详解
    目录一、简单使用二、搭配DISTINCT去重三、COUNT()详细介绍四、分组查询一、简单使用 SUM:求和(一般用于处理数值型) AVG:平均(一般用于处理数值型) MAX:最大(...
    99+
    2022-11-12
  • MySQL查询排序与查询聚合函数用法分析
    本文实例讲述了MySQL查询排序与查询聚合函数用法。分享给大家供大家参考,具体如下: 排序 为了方便查看数据,可以对数据进行排序 语法: select * from 表名 order by 列...
    99+
    2022-10-18
  • MySQL数据查询中如何使用集合/聚合函数查询
    小编给大家分享一下MySQL数据查询中如何使用集合/聚合函数查询,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!MySQL聚合函数如下:函数作用avg()返回某列的平均值count()返回某...
    99+
    2022-10-18
  • PostgreSQL聚合函数的分组排序怎么使用
    本篇内容介绍了“PostgreSQL聚合函数的分组排序怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!聚合函数用于汇总的函数。COUN...
    99+
    2023-06-30
  • MySQL聚合查询方法怎么使用
    本篇内容介绍了“MySQL聚合查询方法怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、前言前面的内容已经把基础的增删改查介绍的差不...
    99+
    2023-07-05
  • MybatisPlus怎么使用聚合函数
    这篇文章主要介绍了MybatisPlus怎么使用聚合函数的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MybatisPlus怎么使用聚合函数文章都会有所收获,下面我们一起来看看吧。首先如果使用sql是这么写的:...
    99+
    2023-07-05
  • PostgreSQL聚合函数的分组排序使用示例
    目录聚合函数COUNTSUM、AVGMAX、MIN聚合函数+DISTINCTGROUP BYHAVINGORDER BY聚合函数 用于汇总的函数。 COUNT COUNT,计...
    99+
    2022-11-13
  • SQL分组函数group by和聚合函数COUNT、MAX、MIN、AVG、SUM是什么以及怎么用
    本篇内容主要讲解“SQL分组函数group by和聚合函数COUNT、MAX、MIN、AVG、SUM是什么/用法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学...
    99+
    2022-10-18
  • SQL Server中的聚合函数怎么使用
    这篇“SQL Server中的聚合函数怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SQL Se...
    99+
    2023-06-30
  • 数据库分组查询语句怎么使用
    在数据库中使用分组查询语句可以对数据进行分组并对每个分组进行聚合操作。常用的分组查询语句是使用SELECT语句结合GROUP...
    99+
    2023-09-15
    数据库
  • JavaScript组合函数怎么使用
    这篇文章主要讲解了“JavaScript组合函数怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript组合函数怎么使用”吧!如果没有组合函数 compose,函数连续调用...
    99+
    2023-07-02
  • PostgreSQL绍聚合函数实现中怎么使用的simplehash
    这篇文章主要讲解了“PostgreSQL绍聚合函数实现中怎么使用的simplehash”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PostgreSQL绍聚...
    99+
    2022-10-18
  • SQLServer 错误 8710 必须提供与 CUBE、ROLLUP 或 GROUPING SET 查询一起使用的聚合函数,才能合并子聚合。 若要修复此问题,请删除该聚合函数或在 GROUP BY
    详细信息 Attribute 值 产品名称 MSSQLSERVER 事件 ID 8710 事件源 MSSQLSERVER 组件 SQLEngine 符号名称 QUERY2_CUBE_ILLEGAL_AGG_FU...
    99+
    2023-11-05
    函数 子句 基础上
  • 怎么使用php查询多组数据
    本篇内容介绍了“怎么使用php查询多组数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、PHP查询多组数据的基本语法在PHP中,查询多组...
    99+
    2023-07-05
  • php字符串查询函数怎么使用
    这篇“php字符串查询函数怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php字符串查询函数怎么使用”文章吧。php...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作