navicat mysql查询表的字段列_Navicat 查询创建工具-使用聚合输出字段(第 4 部分)...

2018 年 2 月 27 日,由 Robert Gravelle 撰写

除了获取个别值之外,SELECT 语句还能够基于一个或多个列聚合数据元素。Navicat 查询创建工具的这篇文章将介绍如何在查询中使用原生 SQL 聚合函数以显示列的统计信息。

关于 Sakila 示例数据库

与前几篇文章一样,我们今天将在此处构建的查询将在 Sakila 示例数据库Sakila 示例数据库运行。它包含许多以电影业为主题的表,涵盖从演员和电影制片厂到影碟出租店的所有内容。有关下载和安装 Sakila 数据库的说明,请参阅 Generating Reports on MySQL Data(生成 MySQL 数据报表)教程。

使用聚合函数

在 SQL 中,输出字段可以传递给聚合函数以生成列数据的统计信息。聚合函数包括 COUNT、MAX、MIN、SUM 和 AVG:

COUNT():返回指定字段中包含非 NULL 值的行数。

SUM():返回指定字段中非 NULL 值的总和。

AVG():返回指定字段中非 NULL 值的平均值。

MIN():返回指定字段中非 NULL 值的最小值。

MAX():返回指定字段中非 NULL 值的最大值。

如第 2 部分所述,点击 Navicat 查询创建工具中输出字段左侧的 修饰符可打开 SUM、MAX、MIX、AVG 和 COUNT 聚合函数的列表。从列表中选择所需的函数会将其插入到查询中:

a428823604d4d7a79e496b288a9e1880.png

这是一个使用聚合函数显示电影数量、平均电影长度、电影总长度以及最低和最高出租率的查询:

e54a1d2bc1a56be334fb23a9a73a8d9d.png

设置分组准则

以上的结果与整个表相关的。你也可以使用 GROUP BY 子句按一列或多列对记录进行分组。

让我们设计一个查询,按月显示租借电影的数量。在查询创建工具中执行以下步骤︰

将 film 和 rental 表拖到编辑器中。

将 film.film_id 字段拖到 rental.inventory_id 字段上以联接两个表。

添加一个输出字段。在编辑器中,输入“MONTHNAME(rental_date)”。

点击 标签,然后输入“rental_month”值。

添加第二个字段。这次,从字段列表中选择 rental_id。

点击 标签,然后从列表中选择 COUNT。

点击 标签,然后输入别名“rental_count”。

点击 标签,然后使用编辑器输入“MONTH(rental_date)”。

查询创建工具现在应该如下所示:

8c8a061e748fca6eb5b9818a864d799e.png

点击“确定”关闭“查询创建工具”并返回“查询编辑器”。

运行查询以查看结果:

72d4b0c59d5f864040bcfaa492b8fa09.png

请留意如何在 rental_month 输出字段上应用 MONTHNAME 函数显示完整的月份名称而不是 MONTH() 函数返回的数字。无论如何,可以使用任何一种函数对结果按月份进行分组。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值