MySQL-分组函数

news2024/11/28 20:46:07

041-分组函数
重点:所有的分组函数都是自动忽略NULL的
分组函数的执行原则:先分组,然后对每一组数据执行分组函数。如果没有分组语句group by的话,整张表的数据自成一组。
分组函数包括五个:

  • max:最大值
  • min:最小值
  • avg:平均值
  • sum:求和
  • count:计数
select sum(sal) from emp;
select lower(ename) from emp;
select max(sal) from emp;
select sum(comm) from emp;
select count(comm) from emp; 统计这个字段当中不为空的个数
select count(*) from emp; 统计表中共有多少条记录(表中的总行数)

在这里插入图片描述
分组函数不能直接使用在where子句当中
select ename,job from emp where sal > avg(sal); 这个会报错的
原因:分组的行为是在where执行之后才开始的。

select ename, sal from emp where sal>avg(sal);

在这里插入图片描述
在这里插入图片描述
找出每个岗位的平均薪资

select job, avg(sal) from emp group by job;

在这里插入图片描述
找出每个部门不同岗位的平均薪资

select deptno, job, avg(sal) from emp group by deptno, job;

在这里插入图片描述

044-分组查询having

找出除20部分之外,其它部门的平均薪资

select deptno, avg(sal) from emp group by deptno having deptno<>20;
select deptno, avg(sal) from emp where deptno<>20 group by deptno;

在这里插入图片描述
查询每个部门平均薪资,找出平均薪资高于2000的。

select deptno, avg(sal) from emp group by deptno having avg(sal)>2000;

在这里插入图片描述

045-分组查询之组内排序

select substring_index('http://www.baidu.com','.',1);
select substring_index('http://www.baidu.com','.',2);

在这里插入图片描述
不同工作岗位的员工编号按照工资降序排列

select group_concat(empno order by sal desc) from emp group by job;

在这里插入图片描述
找出每个工作岗位的工资排名在前两名的

select substring_index(group_concat(empno order by sal desc),',',2) from emp group by job;

在这里插入图片描述

总结单表的DQL语句

select …5
from …1
where …2
group by …3
having …4
order by …6
重点掌握一个完整的DQL语句执行顺序。

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

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

相关文章

智造新篇章:MicroAlign融资助推高精度FA技术革新

随着智能化浪潮的汹涌澎湃&#xff0c;全球制造业正经历着前所未有的技术革新。MicroAlign&#xff0c;一家专注于高精度功能组装&#xff08;FA&#xff09;技术的创新企业&#xff0c;近日宣布完成了高达100万欧元的种子轮融资。这一轮融资不仅为MicroAlign注入了加速商业化的…

java基于Vue+Spring boot前后端分离架构开发的一套UWB技术高精度定位系统源码

java基于VueSpring boot前后端分离架构开发的一套UWB技术高精度定位系统源码 系统采用UWB高精度定位技术&#xff0c;可实现厘米级别定位。UWB作为一种高速率、低功耗、高容量的新兴无线局域定位技术&#xff0c;目前应用主要聚焦在室内外精确定位。在工业自动化、物流仓储、电…

【产品经理】发票系统简述

一、发票类型 增值税电子普通发票&#xff1a;简称电票 增值税普通发票和增值税专用发票&#xff0c;简称&#xff1a;纸票 蓝票&#xff1a;开票金额为正值的发票。红票&#xff1a;发票金额为负值的发票。 注&#xff1a;专票电子化系统国家目前在推&#xff0c;后续有更新…

digit 手写数据库笔记 (机械学习)

参考书籍 第三章内容 digit 手写数据库 # 最初的分类器 # digits 手写数字库import numpy as np import matplotlib.pyplot as plt from sklearn import datasets from sklearn import tree # 性能评价相关的库 from sklearn import metrics# digits 数据加载 digits datase…

人工智能-机器学习算法是什么?

人工智能和机器学习是紧密相关的概念&#xff0c;可以说机器学习是人工智能的一个重要分支。机器学习是一门多学科交叉专业&#xff0c;涵盖概率论知识&#xff0c;统计学知识&#xff0c;近似理论知识和复杂算法知识&#xff0c;使用计算机作为工具并致力于真实实时的模拟人类…

一个小的画布Canvas页面,记录点的轨迹

Hello大家好&#xff0c;好久没有更新了&#xff0c;最近在忙一些其他的事&#xff0c;今天说一下画布canvas&#xff0c;下面是我的代码&#xff0c;实现了一个点从画布的&#xff08;0,0&#xff09;到&#xff08;canvas.width&#xff0c;canvas.height&#xff09;的一个实…

MYSQL数据库下载和安装(详细)

1.点击MySQL官网(后续照着图走) 2.软件下载完点击进入安装 设置要安装的路径然后点击OK,后面点击下一步 再点击下一步 MySQL推荐使用最新的数据库和相关客户端&#xff0c;mysql8换了加密插件&#xff0c;所以如果选第一种方式&#xff0c;很可能导致你的navicat等客户端连不上…

手把手教你,怎么用手机开发一个H5整蛊小游戏

前言&#xff1a; 相信在大家的认知里&#xff0c;做软件&#xff0c;做应用肯定都是通过电脑来进行开发的吧。但是你听说过用手机也可以开发软件吗&#xff1f;今天就教大家如何用手机轻松的开发出一款整蛊的H5小游戏。 首先我们需要借助一个工具CodeFlying&#xff0c;它能够…

为什么要分析电商用户数据?详解两大用户数据分析维度

零售电商行业的蓬勃发展带来了海量的客户数据&#xff0c;这些数据不仅记录了消费者的每一次点击、浏览、购买行为&#xff0c;还蕴含着巨大的商业价值。如何从这些数据中提炼出有价值的信息&#xff0c;成为电商企业提升竞争力、优化客户体验、实现可持续发展的关键。本文将深…

跟着AI学AI_08 NumPy 介绍

NumPy&#xff08;Numerical Python&#xff09;是一个用于科学计算的基础库&#xff0c;它为 Python 提供了支持大规模多维数组和矩阵 NumPy 介绍 NumPy&#xff08;Numerical Python&#xff09;是一个用于科学计算的基础库&#xff0c;它为 Python 提供了支持大规模多维数…

异常体系及自定义路径

异常( Exception) 定义&#xff1a; 异常代表程序出现的问题 图来自黑马程序员 分类&#xff1a; 运行时异常&#xff1a;RuntimeException以及其子类&#xff0c;编译阶段不会出现异常提醒&#xff0c;运行时出现的异常&#xff08;如数组越界异常&#xff09;编译时异常&am…

C++ 11 之 参数传递

c11参数传递.cpp #include <iostream> using namespace std;void swap1(int a, int b) {int temp a;a b;b temp;cout << "函数的a: " << a << endl;cout << "函数的b: " << b << endl; }void swap2(int *a,…

JUC并发编程第十一章——Synchronized与锁升级机制

1 入门知识介绍 synchronized锁&#xff0c;是不是默认实现了锁升级。代码中只需要直接使用synchronized&#xff0c;至于怎么从偏向锁升级为轻量锁再升级为重量级锁&#xff0c;这些底层jvm已经实现了。不需要程序员担心。 是的&#xff0c;Java 8中的synchronized关键字确实默…

为什么代理IP很难做到100%可用性?

在当今高度互联的网络环境中&#xff0c;代理IP已成为许多网络活动的重要支撑工具&#xff0c;从数据收集到业务推广&#xff0c;无所不包。然而&#xff0c;代理IP在很多场景中发挥着重要作用&#xff0c;却很难实现100%的可用性。 这种情况并非偶然&#xff0c;而是受到多重复…

如何给自己的项目实现在线测试的接口文档knife4j

配置实现Knife4j在线接口测试文档 为什么要是实现这个东西呢&#xff1f;肯定是对我们有用的&#xff0c;后端主要编写的就是接口&#xff0c;然后我们将接口编写好了之后肯定还是需要进行调试看是否能够正常使用且按照规范返回对应的数据。相信大家测试都是基本上使用的是一些…

JavaScript的数组(一维数组、二维数组、数组常用的方法调用)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

Java MyBatis实战:QueryWrapper中的and和or拼接技巧

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 一、引言 在Java Web开发中&#xff0c;MyBatis是一个非常流行的持久层框架。它通过XML或注解的方式将Java对象与数据库表进行映射&#xff0c;从而实现数据的增删改查操作。在使用MyBatis的过程中&#xff0c;经常…

景联文科技:打造亿级高质量教育题库,赋能教育大语言模型新未来

随着人工智能技术的持续进步&#xff0c;从广泛的通用大语言模型到针对各行业的垂直大语言模型&#xff0c;已成为人工智能大语言模型技术深化演进的必然趋势。 教育大语言模型是适用于教育场景、具有庞大规模参数、融合了广泛的通用知识和专业知识训练形成的人工智能模型。能为…

【牛客面试必刷TOP101】Day31.BM65 最长公共子序列(二)和BM66 最长公共子串

文章目录 前言一、BM65 最长公共子序列(二)题目描述题目解析二、BM66 最长公共子串题目描述题目解析总结 前言 一、BM65 最长公共子序列(二) 题目描述 描述&#xff1a; 给定两个字符串str1和str2&#xff0c;输出两个字符串的最长公共子序列。如果最长公共子序列为空&#xf…

外星人Aurora R15 intel版 原厂Windows11oem系统

装后恢复到您开箱的体验界面&#xff0c;包括所有原机所有驱动AWCC、Mydell、office、mcafee等所有预装软件。 最适合您电脑的系统&#xff0c;经厂家手调试最佳状态&#xff0c;性能与功耗直接拉满&#xff0c;体验最原汁原味的系统。 原厂系统下载网址&#xff1a;http://w…