根据平均值列出记录

news2024/11/23 9:06:18

AANSI SQL包括几个聚合函数,使您可以对一组值进行计算以将其结果作为单个值返回。他们包括Count(), Min(), Max(), Sum() and AVG(),以及其他。默认情况下,聚合函数适用于所有行,但是您可以通过将WHERE子句应用于SELECT语句来缩小字段的范围。此外,您可以使用其他一些技术有条件地选择某些行,我们将在今天使用 Navicat Premium 探索这些技术。这些包括使用CASE语句以及GROUP BY子句。 我们将这些技术应用于AVG()函数,但它们将与所有聚合函数同样有效。

如果你还没有使用过 Navicat Premium,可点击这里下载14天免费全功能试用版。

使用AVG() 函数

AVG()函数返回一个给定表达式的平均值。 如果该函数找不到匹配的行,则返回NULL。 我们将针对Sakila示例数据库 运行查询。 它最初是为MySQL开发的,但此后已移植到大多数流行的DBMS。Navicat Premium是理想的数据库客户端,因为它支持从MySQL,MariaDB,MongoDB,SQL Server,Oracle,PostgreSQL到SQLite的所有内容。此外,它还与Amazon RDS,Amazon Aurora,Amazon Redshift,Microsoft Azure,Oracle Cloud,Google Cloud和MongoDB Atlas等云数据库兼容。

film表存储有关虚构的Sakila视频租赁商店的各个电影的信息。 列包括标题,描述,运行时间,租金,等级和其他。

我们可以使用AVG()函数确定所有电影的平均租赁成本,如下所示:

使用CASE语句

AVG()函数接受一个表达式。 因此,它可以是列名,但是可以是任何有效表达式。 因此,我们可以通过将CASE语句作为参数传递给AVG()函数来有条件地应用AVG()函数。 我们可以使用CASE语句确定仅具有PG评级的电影的平均rental_rate,如下所示:

上面的查询显示了所有电影的总数量,没有PG评级的电影的数量,以及所有电影和具有PG评级的电影的平均租金。 使用CONCAT()和FORMAT()函数将rental_rate显示为货币。

使用GROUP BY子句

将AVG()仅应用于某些行的另一种方法是使用GROUP BY。 它根据选定的列汇总结果。 因此,按等级对结果进行分组将列出每个等级的平均rental_rate:

我们可以使用WHERE和/或HAVING子句来缩小选择的行的范围。 两者都可以单独或串联使用。 例如,下一个查询选择language_id为1(英语)的电影,其评分总数少于200:

总结

在今天的博客中,我们使用CASE语句和GROUP BY子句有条件地基于平均值列出电影记录。

往期回顾

1. 盗版引发设备瘫痪 | 官方严正声明:切勿在非官方渠道购买或下载 Navicat 软件

2. Navicat 荣获 Microsoft 金牌合作伙伴

3. Navicat 16.3 正式支持 OceanBase 企业版

4. 免费试用 Navicat 16

5. Navicat 发展史

6. SQL 语句中 WHERE 1=1 的作用

7. 在 SQL 中计算总行数的百分比

8. 互动有礼活动进行中 | 奖品为价值 819 元 Navicat Premium

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/66605.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

直冲云霄,阿里大牛耗时49天整理12W字面试手册,押题准确率直冲95%

很多人都想进字节做开发,不论是技术还是薪资、福利都算得上TOP级~ 7月底官方再次启动扩招,发布了1200+后端工程师岗位! 那么本批有哪些优质岗位可选择?薪资待遇如何? 下面给大家列出几类具体的岗位要求&a…

软件项目管理指南:定义、5大过程、估算及进度管理方法等

本文将分享:1、软件项目管理的定义;2、软件项目管理的过程步骤;3、软件项目管理的内容;4、软件项目估算与进度管理方法;5、软件开发各生命周期阶段与文档、角色间的关系;6、软件开发项目中的各大角色职能&a…

深度学习-第P1周——实现mnist手写数字识别

深度学习-第P1周——实现mnist手写数字识别深度学习-第P1周——实现mnist手写数字识别一、前言二、我的环境三、前期工作1、导入依赖项并设置GPU2、导入数据集3、数据可视化四、构建简单的CNN网络五、训练模型1、设置超参数2、编写训练函数3、编写测试函数4、正式训练六、结果可…

ADSP-21489的图形化编程详解(7:延时、增益、分频、反馈、响度)

延时 21489 可以做延时,音频高手会运用此项算法来增强音效,我们做个最简单的,让大家知道怎么用它,至于怎么样嵌入到自己的系统里实现更好的效果,则需要各位调音师专业的耳朵来判断,调音无上限!…

MySQL之索引及其背后的数据结构

✨博客主页: 荣 ✨系列专栏: MySQL ✨一句短话: 难在坚持,贵在坚持,成在坚持! 文章目录一. 索引的介绍1. 什么是索引2. 索引的使用二. 索引背后的数据结构1. 考虑使用哈希表2. 二叉搜索树3. N叉搜索树(B树, B树)4. 注意事项一. 索引的介绍 1. 什么是索引 索引 (Index) 是帮助…

[激光原理与应用-39]:《光电检测技术-6》- 光干涉的原理与基础

目录 第1章 概述 1.1 什么是光干涉 1.2 产生干涉的必要条件 1.3 非相干光 - 自发辐射无法产生干涉 1.4 相干光 - 受激辐射 1.5 时间相干性 1.6 空间相干性 它山之石 第1章 概述 1.1 什么是光干涉 它是指因两束光波相遇而引起光的强度重新分布的现象。 指两列或两列以上…

Verilog入门学习笔记:Verilog基础语法梳理

无论是学IC设计还是FPGA开发,Verilog都是最基本、最重要的必备技能。但任何一门编程语言的掌握都需要长期学习。并不是简简单单的随便读几本书,随便动动脑筋那么简单。Verilog是一门基于硬件的独特语言,由于它最终所实现的数字电路&#xff0…

基于AVDTP信令分析蓝牙音频启动流程

前言 公司项目edifier那边需要在原来音频SBC,AAC基础上增加LHDC5.0编码,在打通lhdc协议栈之前,学习记录一番AVDTP音频服务流程。 一、AVDTP音频流基础知识 分析音频流程首先应具备的最简单基础概念知识:AVDTP信令signal,流端点se…

【JVM】垃圾回收机制详解(GC)

目录一.GC的作用区域二.关于对象是否可回收1.可达性分析算法和引用计数算法2.四种引用类型三.垃圾收集算法1.标记-清除算法2.复制算法3.标记-整理算法4.分代收集算法四.轻GC(Minor GC)和重GC(Full GC)一.GC的作用区域 可以看jvm详解之后,再来理解这篇文章更好 堆和…

[附源码]计算机毕业设计农村人居环境治理监管系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

ASP.NET Core 3.1系列(18)——EFCore中执行原生SQL语句

1、前言 前一篇博客介绍了EFCore中常见的一些查询操作,使用Linq或Lambda结合实体类的操作相当方便。但在某些特殊情况下,我们仍旧需要使用原生SQL来获取数据。好在EFCore中提供了完整的方法支持原生SQL,下面开始介绍。 2、构建测试数据库 …

Radare2 框架介绍及使用

Radare2 框架介绍及使用 欢迎入群交流 radare2 这是整个框架的核心工具,它具有debugger和Hexeditor的核心功能,使您能够像打开普通的文件一样,打开许多输入/输出源,包括磁盘、网络连接、内核驱动和处于调试中的进程等。 它实现了…

旧版本金庸群侠传3D新Unity重置修复版入门-lua”脚本“

金庸3DUnity重置入门系列文章 金庸3dUnity重置入门 - lua 语法 金庸3dUnity重置入门 - UniTask插件 金庸3dUnity重置入门 - Cinemachine 动画 金庸3dUnity重置入门 - 大世界实现方案 金庸3dUnity重置入门 - 素材极限压缩 (部分可能放到付费博客) 2022年底~20…

Apifox和Eolink两个测试工具谁最实用?

目前行业内有 postman、jmeter 为代表开源 Api 工具派系,我想对大家对这两个词并不陌生。虽然它们能解决基本的接口测试,但是无法解决接口链路上的所有问题,一个工具难以支持整个过程。在国内,我们可以看到有国产 API 管理工具&am…

Spring Cloud 微服务讲义

Spring Cloud 微服务讲义第一部分 微服务架构第 1 节 互联网应用架构演进第 2 节 微服务架构体现的思想及优缺点第 3 节 微服务架构中的核心概念第二部分 Spring Cloud 综述第 1 节 Spring Cloud 是什么第 2 节 Spring Cloud 解决什么问题第 3 节 Spring Cloud 架构3.1 Spring …

CCES软件做开发,如果仿真器连不进目标板怎么解决?(Failed to connect to processor)

ADI的DSP调试,我在Visual DSP软件下写过一个详细的帖子,来说明仿真器如果连不进目标板,可能存在的几种问题以及解决办法,现在在CCES软件下遇到了同样的问题,所以准备再写一个帖子说明一下。 我们都知道ADI的DSP&#…

智慧工地管理平台系统厂家哪家强|喜讯科技

喜讯科技针对施工现场涉及面广,多种元素交叉,状况较为复杂,如人员出入、机械运行、物料运输等工程项目管理在一定程度上存在着决策层看不清、管理层管不住、执行层做不好的问题。 围绕施工现场管理,构建全方位的智能监控防范体系弥…

Redis——Linux下安装以及命令操作

一、概述 redis是什么? Redis(Remote Dictionary Server ),即远程字典服务 是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 是一款高性能的NOSQL系列的非关系型…

每日一题:冒泡排序

每日一题:冒泡排序每日一题:冒泡排序第一种写法:第二种写法:每日一题:冒泡排序 冒泡排序是八大排序中较为简单的一种,具体详细可见:冒泡排序_百度百科 (baidu.com) 我们重点来看冒泡排序的步骤: 冒泡排序…

程序员如何写游戏搞钱?

ConcernedApe,一个叫做Eric Barone的程序员研发了一款叫做星露谷的小游戏,以乡村经营生活为核心,打造了一个虚拟的小世界,在这个小世界,你可以种植农作物,经营农场并挖矿钓鱼。 其中钓鱼的玩法是十分新颖的…