SQL Server基础 第六章 聚合函数和分组查询

news2024/11/16 18:02:21

        前言

        在数据查询的很多场合,除了需要显示数据表的原始数据,还需要对这些数据进行分析、汇总以及求极值等, 如获取公司员工的人数、工资总额、最高工资、最低工资和平均工资等。本章我们将通过学习SQL Server 聚合函数轻松获取上述数据。另外,我们经常需要对某些数据进行分门门别类地统计:汇总,如按月份统计员工工资 总额、按种类统计商品的销售总额和平均售价等。利用本章所介绍的GROUP BY子句,同时结合聚合函数,就可有效地解决此类需求。

目录

1、聚合函数

查询这些人的最大money,最小money,平均money,总和money,及统计money行的数量

 查询年纪最大的员工的出生日期,及其年龄

2、分组

根据category进行类型分组,然后显示每组的平均价格,并按照平均价格进行排序

 根据类型分组统计商品数量和平均单价,并按平均单价升序显示平均单价高于100元的分组信息

 根据类型和价格进行多字段分组

 统计分组后各组有效数据和​编辑

 统计每条订单所订购的商品件数大于4的分组信息,并按商品件数升序显示

​编辑


1、聚合函数

SUM() 求和 sum(列名)
MAX() 最大值 max(列名)
MIN() 最小值 min(列名)
AVG() 平均值 avg(列名)
COUNT() 统计行数, 只统计有效行数

查询这些人的最大money,最小money,平均money,总和money,及统计money行的数量

注意:此时计算平均数时,因为有一个空值所以不参与计算,所以就除以6就好了

select sum(money)宿舍月收入 ,max(money)最高, min (money)最低,AVG (money)平均 ,count(money) from Table_1

 

 查询年纪最大的员工的出生日期,及其年龄

2、分组

group by 列名, 根据列进行分组
group by 列名 having 筛选条件 对分组结果进行筛选
group by 列名 with rollup 统计分组后各组有效行数总和

根据category进行类型分组,然后显示每组的平均价格,并按照平均价格进行排序

select Category,count(*),AVG(UnitPrice)from Goods group by Category order by AVG(UnitPrice)

 

 根据类型分组统计商品数量和平均单价,并按平均单价升序显示平均单价高于100元的分组信息

select Category,count(*)数量,AVG(UnitPrice)平均单价  from Goods group by Category having AVG(UnitPrice)>100 order by 平均单价 

 根据类型和价格进行多字段分组

 统计分组后各组有效数据和

 统计每条订单所订购的商品件数大于4的分组信息,并按商品件数升序显示

查询前

 

select OrdersID,sum(Quantity)商品件数 from OrdersDetail group by OrdersID having sum(Quantity)>4 order by 商品件数

查询后 

 

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

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

相关文章

基于Java+SpringBoot+vue学生学习平台详细设计实现

基于JavaSpringBootvue学生学习平台详细设计实现 博主介绍:5年java开发经验,专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源码联系方式 文章目…

软件架构的演进(超详细)

文章目录 前言1、什么是单体架构2、分布式架构3、SOA架构4、微服务架构总结 前言 之前对各种架构一直有所了解,但也只是了解,没有过多的研究为什么架构在慢慢演进,新架构代替老架构的理由是什么,而刚好最近学习了一下架构的演进过…

人工智能会取代人工翻译吗?

当今社会正处于语言和技术高速发展的阶段,因此语言和技术的碰撞是不可避免的——甚至有些人说这种碰撞已经发生了,我们只是在等待尘埃落定。数字化、物联网、人工智能和机器学习,以及更进一步——智能手机、语音识别,以及互联网和…

27《Protein Actions Principles and Modeling》-《蛋白质作用原理和建模》中文分享

​《Protein Actions Principles and Modeling》-《蛋白质作用原理和建模》 本人能力有限,如果错误欢迎批评指正。 第六章:The principles of protein folding kinetics (蛋白质折叠动力学的原理) 整个二级结构通常作为一个单…

JS规范及常见问题

数字和字符串不能混合使用。 做加减法可能出错 "1"1 "11"做判断可能出错 "2"<"11"false几种for循环的使用: for(var i0;i<list.length;i): es5,需要拿到下标时、遍历非标准数组如FileList时for(var i in obj): es5,遍历对象时…

SpringBoot接口传递自定义参数,参数解析器

Hi I’m Shendi SpringBoot接口传递自定义参数&#xff0c;参数解析器 简介 我的需求&#xff1a;编写了一个日志微服务&#xff0c;使用方式是 创建日志对象 - 日志流程 - 完成日志对象&#xff0c;这样的方式使用时就需要在每个接口都去创建和完成一下&#xff0c;多出了一点…

查看 AndroidManifest.xml 文件内容,解决全是二进制代码问题

想查看打包后apk的AndroidManifest.xml文件内容&#xff0c;之前都是将后缀apk改为zip&#xff0c;直接解压查看&#xff0c;有时会遇到都是二进制代码&#xff0c;给出集中查看明文的方法&#xff1a; 方法一、通过android studio自带的Analyze apk 功能 通过 studio Build …

9.7 字符串的指针和指向字符串的指针变量

9.7 字符串的指针和指向字符串的指针变量 一.字符串表示形式二.字符串指针做函数参数1.数组名做函数参数2.数组指针做函数参数 三.字符指针变量与字符数组&#xff08;1&#xff09;字符数组是由若干个元素组成&#xff0c;每个元素中存放一个字符。&#xff08;2&#xff09;赋…

优化配置Little Snitch for Mac的规则和设置

Little Snitch for Mac是一款专业的macOS防火墙软件&#xff0c;它可以帮助你控制应用程序是否访问网络或者磁盘&#xff0c;并对系统不可信的进程和信息进行监控。如果你想保护你的Mac的网络安全&#xff0c;那么你需要了解如何配置和优化Little Snitch for Mac的规则和设置。…

证件照换底色,快试试这3种方法,方便还快捷

由于我们不论是在生活还是学习中&#xff0c;有时候总会要上传一些证件照&#xff0c;而当你手上有证件照准备上传时&#xff0c;发现底色不对&#xff0c;是不是很抓狂&#xff0c;电子证件照片换底色怎么弄&#xff1f;很多小伙伴还在因为证件照底色不对而重新拍&#xff1f;…

PureComponent和React.memo()区别

文章目录 前言一、区别二、用法 前言 本篇文章主要讲解了&#xff0c;PureComponent和React.memo()区别及用法。 一、区别 PureComponent 和 React.memo() 都是 React 中优化组件性能的方式。 PureComponent 是一个类组件&#xff0c;而 React.memo() 是一个高阶函数。 Reac…

什么蓝牙耳机适合学生党?学生党蓝牙耳机性价比排行

现如今&#xff0c;市场上有各种各样的品牌和蓝牙耳机&#xff0c;让人在选择时不免眼花缭乱。作为学生党&#xff0c;在选择一样东西的时候&#xff0c;性价比无疑会成为其选择的重要参考因素。下面&#xff0c;我来给大家分享几款适合学生党的高性价比蓝牙耳机&#xff0c;一…

SpringBoot拦截器的使用

Hi I’m Shendi SpringBoot拦截器的使用 简介 最近要实现一个全局对象的传递&#xff0c;在接口中直接通过增加函数参数来直接使用的这种方式 之前一直使用的是过滤器&#xff0c;但这种需求过滤器是没有办法实现的&#xff0c;过滤器可以给请求注入字符串&#xff0c;但不能…

【Spring】Spring的数据库开发

目录 1.Spring JDBC1.1 Spring JdbcTemplate的解析1.2 Spring JDBC的配置 2 Spring JdbcTemplate的常用方法2.1 execute()——执行SQL语句2.2 update()——更新数据2.3 query()——查询数据 1.Spring JDBC 1.1 Spring JdbcTemplate的解析 针对数据库的操作&#xff0c;Spring…

FreeRTOS - 二值信号量

一.信号量定义 信号量&#xff08;semaphore&#xff09;&#xff0c;多任务环境下使用的一种设施&#xff0c;负责协调多个任务&#xff0c;以保证任务能够正确&#xff0c;合理的使用公共资源。 二.二值信号量应用函数 函数原型#include “FreeRTOS.h”#include “semphr.h”…

我国纯电动汽车行业开始从“政策导向”向“消费导向”转变 未来机遇挑战并存

1、纯电动汽车概念及其优缺点情况 新能源汽车以能源供给方式主要可以分为纯电动汽车、混合动力汽车以及燃料电池汽车。其中&#xff0c;纯电动汽车则是指完全由可充电电池&#xff08;如铅酸电池、镍镉电池、镍氢电池或锂离子电池&#xff09;提供动力源&#xff0c;用电机驱动…

华纳云:Pycharm无法正常安装第三方库怎么解决?

这篇文章主要介绍“Pycharm无法正常安装第三方库怎么解决”的相关知识&#xff0c;小编通过实际案例向大家展示操作过程&#xff0c;操作方法简单快捷&#xff0c;实用性强&#xff0c;希望这篇“Pycharm无法正常安装第三方库怎么解决”文章能帮助大家解决问题。 1.首先检查自…

MongoDB常用语句(CURD)

文章目录 一、数据库操作二、集合操作三、文档操作3.1 插入文档3.2 查询文档3.3 更新文档3.4 删除文档 四、安全认证4.1 创建管理员账号4.2 创建应用数据库用户4.3 启动和连接 (校验方式) 提示&#xff1a;以下是本篇文章正文内容&#xff0c;MongoDB 系列学习将会持续更新 一…

【达摩院OpenVI】视频目标渐进式Transformer跟踪器ProContEXT

论文&代码 论文链接&#xff1a;[arxiv]代码&应用&#xff1a; 开源代码&#xff1a;[github code]开源应用&#xff1a;[modelscope] 背景介绍 视频目标跟踪&#xff08;Video Object Tracking, VOT&#xff09;任务以一段视频和第一帧中待跟踪目标的位置信息&…

为什么使用了索引,查询还是慢?

&#x1f3c6;今日学习目标&#xff1a; &#x1f340;为什么使用了索引&#xff0c;查询还是慢&#xff1f; ✅创作者&#xff1a;林在闪闪发光 ⏰预计时间&#xff1a;30分钟 &#x1f389;个人主页&#xff1a;林在闪闪发光的个人主页 &#x1f341;林在闪闪发光的个人社区&…