当前位置: 首页 > news >正文

MySQL的内置函数

在这里插入图片描述

文章目录

  • 1. 聚合函数
  • 2. group by子句的使用
  • 3. 日期函数
  • 4. 字符串函
  • 5. 数学函数
  • 6. 其它函数

1. 聚合函数

COUNT([DISTINCT] expr) 返回查询到的数据的数量
在这里插入图片描述
用SELECT COUNT(*) FROM students或者SELECT COUNT(1) FROM students也能查询总个数。

统计本次考试的数学成绩分数去重个数:
在这里插入图片描述
SUM([DISTINCT] expr) 返回查询到的数据的 总和,不是数字没有意义
在这里插入图片描述
AVG([DISTINCT] expr) 返回查询到的数据的 平均值,不是数字没有意义
求每个同学的平均分排名:
在这里插入图片描述
MAX([DISTINCT] expr) 返回查询到的数据的 最大值,不是数字没有意义
返回英语最高分:
在这里插入图片描述
MIN([DISTINCT] expr) 返回查询到的数据的 最小值,不是数字没有意义
返回 > 70 分以上的数学最低分:
在这里插入图片描述
聚合统计一定是直接或者间接统计列方向的某些数据,它们的属性一定相同

2. group by子句的使用

在select中使用group by 子句可以对指定列进行分组查询:
在这里插入图片描述
举个例子:
在这里插入图片描述
在这里插入图片描述
下面我们把这个数据库备份放到我们的数据库中:
在这里插入图片描述
这里我们成功获取这3张表。

在这里插入图片描述
这是部门表,第一个字段是部门编号,第二个字段是部门名称,第三个字段是部门所在地点。
在这里插入图片描述
这是员工表,字段的意思依次是:雇员编号、雇员姓名、雇员职位、雇员领导编号、雇佣时间、工资月薪、奖金、部门编号。
在这里插入图片描述
这是工资等级表,字段的意思依次是:等级、此等级最低工资、此等级最高工资。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们已经在这3张表中插入了数据。

如何显示每个部门的平均工资和最高工资?
在这里插入图片描述
因为4号部门没有员工,所以就不显示。

如何显示每个部门的每种岗位的平均工资和最低工资?
在这里插入图片描述
如何显示平均工资低于2000的部门和它的平均工资?

这里我们不能使用where来筛选了,需要使用having:
在这里插入图片描述
总结:
1.group by是通过分组这样的手段,为未来进行聚合统计提供基本信息的功能支持(group by一定是通过聚合统计来使用的)

2.group by后面跟的都是分组的字段依据,只有在group by后面出现的字段,未来在聚合统计的时候,才能在select后面出现

3.where和having它们两个是不冲突的,是互相补充的,having通常是在完成整个分组统计后,再进行筛选。where是在表中数据初步筛选的时候起作用的

SQL查询中各个关键字的执行先后顺序 from > on> join > where > group by > with > having > select> distinct > order by > limit

3. 日期函数

在这里插入图片描述
获得时间戳:
在这里插入图片描述
它的作用和now()一样。

在日期的基础上加天数:
在这里插入图片描述
我们也可以加上年,分钟,秒。

计算两个日期之间相差多少天:
在这里插入图片描述

创建一个留言表:
在这里插入图片描述
插入数据:
在这里插入图片描述
显示所有留言信息,发布日期只显示日期,不用显示时间:
在这里插入图片描述
data函数会把我们的时间只保留日期格式。

请查询在2分钟内发布的帖子
如果我们现在的时间减去2分钟的时间,在这个时间端就是2分钟内发布的帖子,换算一下就是发布的帖子+2分钟大于现在的时间。

select * from msg where date_add(sendtime, interval 2 minute) > now();

4. 字符串函

在这里插入图片描述
获取emp表的ename列的字符集:
在这里插入图片描述
要求显示员工表中的信息,显示格式:“XXX的工作是XXX,薪水是XXX”:
在这里插入图片描述
求员工表中员工姓名占用的字节数:
在这里插入图片描述
注意:length函数返回字符串长度,以字节为单位。如果是多字节字符则计算多个字节数,如果是单字节字符则算作一个字节。比如:字母,数字算作一个字节,中文表示多个字节数(与字符集编码有关)。
在这里插入图片描述
substring函数的作用是:取某个字符串的一部分,并且可以指定要取长度的大小,从1开始。
在这里插入图片描述
replace可以进行字符串的替换。

以首字母小写的方式显示所有员工的姓名:
在这里插入图片描述
查出所有员工的工作是CLERK的:
在这里插入图片描述
如果我们想查询的不是的话,我们就什么都不带。
在这里插入图片描述

5. 数学函数

在这里插入图片描述
保留2位小数位数(小数四舍五入):
在这里插入图片描述
将10从10进制转成16进制:
在这里插入图片描述

6. 其它函数

user() 查询当前用户:
在这里插入图片描述
md5(str)对一个字符串进行md5摘要,摘要后得到一个32位字符串:
在这里插入图片描述
password()函数,MySQL数据库使用该函数对用户加密:
在这里插入图片描述
下面我们创建一个用户表,密码是加密的:
在这里插入图片描述
下面我们进行插入:
在这里插入图片描述
并且加密的,不会显示在MySQL中的历史语句中。

如果用户输入密码,怎么比较呢
在这里插入图片描述
ifnull(val1, val2) 如果val1为null,返回val2,否则返回val1的值:
在这里插入图片描述

相关文章:

MySQL的内置函数

文章目录 1. 聚合函数2. group by子句的使用3. 日期函数4. 字符串函5. 数学函数6. 其它函数 1. 聚合函数 COUNT([DISTINCT] expr) 返回查询到的数据的数量 用SELECT COUNT(*) FROM students或者SELECT COUNT(1) FROM students也能查询总个数。 统计本次考试的数学成绩分数去…...

数据结构与算法-(7)---栈的应用-(3)表达式转换

🌈write in front🌈 🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流. 🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如…...

Lilliefors正态性检验(一种非参数统计方法)

Lilliefors检验(也称为Kolmogorov-Smirnov-Lilliefors检验)是一种用于检验数据是否符合正态分布的统计检验方法,它是Kolmogorov-Smirnov检验的一种变体,专门用于小样本情况。与K-S检验不同,Lilliefors检验不需要假定数…...

【云原生】配置Kubernetes CronJob自动备份MySQL数据库(单机版)

文章目录 每天自动备份数据库MySQL【云原生】配置Kubernetes CronJob自动备份Clickhouse数据库 每天自动备份数据库 MySQL 引用镜像:databack/mysql-backup,使用文档:https://hub.docker.com/r/databack/mysql-backup 测试、开发环境:每天0点40分执行全库备份操作,备份文…...

基于PSO算法的功率角摆动曲线优化研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

数论知识点总结(一)

文章目录 目录 文章目录 前言 一、数论有哪些 二、题法混讲 1.素数判断,质数,筛法 2.最大公约数和最小公倍数 3.快速幂 4.约数 前言 现在针对CSP-J/S组的第一题主要都是数论,换句话说,持数论之剑,可行天下矣! 一、数论有哪些 数论 原根,素数判断,质数,筛法最大公约数…...

知识分享 钡铼网关功能介绍:使用SSLTLS 加密,保证MQTT通信安全

背景 为了使不同的设备或系统能够相互通信,让旧有系统和新的系统可以集成,通信更加灵活和可靠。以及将数据从不同的来源收集并传输到不同的目的地,实现数据的集中管理和分发。 通信网关完美克服了这一难题,485或者网口的设备能通过…...

asp.net core mvc区域路由

ASP.NET Core 区域路由(Area Routing)是一种将应用程序中的路由划分为多个区域的方式,类似于 MVC 的控制器和视图的区域划分。区域路由可以帮助开发人员更好地组织应用程序的代码和路由,并使其更易于维护。 要使用区域路由&#…...

KNN(下):数据分析 | 数据挖掘 | 十大算法之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…...

Servlet开发-session和cookie理解案例-登录页面

项目展示 进入登录页面,输入正确的用户名和密码以后会自动跳到主页 登录成功以后打印用户名以及上次登录的时间,如果浏览器和客户端都保存有上次登录的信息,则不需要登录就可以进入主页 编码思路 1.首先提供一个登录的前端页面&…...

Polygon Miden:扩展以太坊功能集的ZK-optimized rollup

1. 引言 Polygon Miden定位为zkVM,定于2023年Q4上公开测试网。 zk、zkVM、zkEVM及其未来中指出,当前主要有3种类型的zkVM,括号内为其相应的指令集: mainstream(WASM, RISC-V)EVM(EVM bytecod…...

[题]宝物筛选 #单调队列优化

五、宝物筛选&#xff08;洛谷P1776&#xff09; 题目链接 好家伙&#xff0c;找到了一个之前学习多重背包优化时的错误…… 之前记的笔记还是很有用的…… #include<bits/stdc.h> using namespace std; const int N 1e5 10; int f[N]; int n, m; int v, w, s; int l…...

.NET的键盘Hook管理类,用于禁用键盘输入和切换

一、MyHook帮助类 此类需要编写指定屏蔽的按键&#xff0c;灵活性差。 using System; using System.Runtime.InteropServices; using System.Diagnostics; using System.Windows.Forms; using Microsoft.Win32;namespace MyHookClass {/// <summary>/// 类一/// </su…...

Anaconda Jupyter

&#x1f64c;秋名山码民的主页 &#x1f602;oi退役选手&#xff0c;Java、大数据、单片机、IoT均有所涉猎&#xff0c;热爱技术&#xff0c;技术无罪 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; 获取源码&#xff0c;添加WX 目录 前言An…...

Unity中Shader的前向渲染路径ForwardRenderingPath

文章目录 前言一、前向渲染路径的特点二、渲染方式1、逐像素(效果最好)2、逐顶点(效果次之)3、SH球谐(效果最差) 三、Unity中对灯光设置 后&#xff0c;自动选择对应的渲染方式1、ForwardBase仅用于一个逐像素的平行灯&#xff0c;以及所有的逐顶点与SH2、ForwardAdd用于其他所…...

简历项目优化关键方法论-START

START方法论是非常著名的面试法则&#xff0c;经常被面试官使用的工具 Situation:情况、事情、项目需求是在什么情况下发生Task:任务&#xff0c;你负责的做的是什么Action:动作&#xff0c;针对这样的情况分析&#xff0c;你采用了什么行动方式Result:结果&#xff0c;在这样…...

TensorFlow学习1:使用官方模型进行图片分类

前言 人工智能以后会越来越发达&#xff0c;趁着现在简单学习一下。机器学习框架有很多&#xff0c;这里觉得学习谷歌的 TensorFlow&#xff0c;谷歌的技术还是很有保证的&#xff0c;另外TensorFlow 的中文文档真的很友好。 文档&#xff1a; https://tensorflow.google.cn/…...

C++ 并发编程实战 第八章 设计并发代码 一

目录 8.1 在线程间切分任务 8.1.1 先在线程间切分数据&#xff0c;再开始处理 8.1.2 以递归方式划分数据 8.1.3 依据工作类别划分任务 借多线程分离关注点需防范两大风险 在线程间按流程划分任务 8.2 影响并发性能的因素 8.2.1 处理器的数量 8.2.2 数据竞争和缓存兵乓…...

设计模式8、装饰者模式 Decorator

解释说明&#xff1a;动态地给一个对象增加一些额外的职责。就扩展功能而言&#xff0c;装饰模式提供了一种比使用子类更加灵活的替代方案 抽象构件&#xff08;Component&#xff09;&#xff1a;定义一个抽象接口以规范准备收附加责任的对象 具体构件&#xff08;ConcreteCom…...

抖音开放平台第三方代小程序开发,一整套流程

大家好&#xff0c;我是小悟 抖音小程序第三方平台开发着力于解决抖音生态体系内的小程序管理问题&#xff0c;一套模板&#xff0c;随处部署。能尽可能地减少服务商的开发成本&#xff0c;服务商只用开发一套小程序代码作为模板就可以快速批量的孵化出大量的商家小程序。 第…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

Pinocchio 库详解及其在足式机器人上的应用

Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库&#xff0c;专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性&#xff0c;并提供了一个通用的框架&…...

【生成模型】视频生成论文调研

工作清单 上游应用方向&#xff1a;控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek

文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama&#xff08;有网络的电脑&#xff09;2.2.3 安装Ollama&#xff08;无网络的电脑&#xff09;2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

django blank 与 null的区别

1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是&#xff0c;要注意以下几点&#xff1a; Django的表单验证与null无关&#xff1a;null参数控制的是数据库层面字段是否可以为NULL&#xff0c;而blank参数控制的是Django表单验证时字…...