mysql基础-常用函数汇总
目录
1. 查询技巧
2. 时间函数
2.1 now()
2.2 current_date()
2.3 时间差timestampdiff()与datediff()
2.4 其他时间函数
3. 字符函数
3.1 截取函数
3.2 分割函数
3.3 left与right函数
3.4 其他函数
4. 数字函数
5. 转换函数
5.1 时间转字符
5.1.1 示例
5.1.2 语法
5.2 字符串转时间
5.2.1 示例
5.2.2 语法
5.3 字符转数字
6.聚合函数
6.1 count():取数量。
6.1.1 常用语法
6.1.2 常用形式性能问题
6.2 avg()
6.3 其他
7. 其他函数
1. 查询技巧
首先介绍一种查询用法。 我们可以在数据库管理工具中(例如navicat)直接使用如下方式获取函数结果:
select 函数(入参);
例如获取当前时间,now()函数是获取当前时间
select now();

2. 时间函数
2.1 now()
当前时间,示例如上。
2.2 current_date()
获取当前日期

2.3 时间差timestampdiff()与datediff()
计算两个日期的相差天数:
select datediff('2024-01-09 21:00:00','2024-01-01 21:01:01');
结果:8
计算两个时间的相差值:
select timestampdiff(SECOND,'2024-01-09 21:00:00','2024-01-09 21:01:01');
结果:61
注:timestampdiff()可以输入不同的单位,例如:HOUR、DAY
2.4 其他时间函数
YEAR(date):获取 date 中的年。
MONTH(date):获取 date 中的月。
DAY(date):获取 date 中的日。
HOUR(date):获取 date 中的小时。
MINUTE(date):获取 date 中的分。
SECOND(date):获取 date 中的秒。
感兴趣可以自行试试。
3. 字符函数
3.1 截取函数
select SUBSTRING('20240109214000',1,8) ;
结果:20230109
注:起始位置为1
3.2 分割函数
select SUBSTRING_INDEX('河北_保定_定州', '_', 2);
结果:河北_保定
使用场景: 经常使用于机构表的查询,因为大多数类似机构表的数据存储格式为省市县_乡(示例,莫纠结详细真实场景),我们可以使用分割函数来获取某个省的数据,
3.3 left与right函数
select left('20240109214000',8);
结果:20240109
使用场景:针对于使用字符存储日期的数据库中,使用场景非常多。例如:查询创建时间为20240109的订单数据数据(此处我们假设订单表的创建时间是字符类型,格式为:yyyyMMddHHmmss):
select * from t_order where left(create_time,8) ='20240109'
可以自行尝试一下right函数。
3.4 其他函数
length(字段):长度函数
concat(字段1,字段2,...):连接函数(使用常景也比较多)
4. 数字函数
向上取整 CEIL(X) 和 CEILING(X):返回大于等于 X 的最小 INT 型整数。
向下取整 FLOOR(X):返回小于等于 X 的最大 INT 型整数。
舍入函数 ROUND(X,D):X 表示要处理的数,D 表示保留的小数位数,处理的方式是四舍五入。ROUND(X) 表示保留 0 位小数。
5. 转换函数
5.1 时间转字符
5.1.1 示例
select date_format(now(),'%Y-%m');
结果:2024-01
5.1.2 语法
date_format(date, format)
-
date:要格式化的日期或时间值。 -
format:指定日期或时间值的格式其中日期格式化选项:
-
%Y:四位数的年份(例如:2023)。 -
%y:两位数的年份(例如:23)。 -
%m:两位数的月份(01-12)。 -
%d:两位数的日(01-31)。 -
%H:24 小时制的小时数(00-23)。 -
%i:两位数的分钟数(00-59)。 -
%s:两位数的秒数(00-59
5.2 字符串转时间
5.2.1 示例
select str_to_date('2024-01-09','%Y-%m-%d');
结果:2024-01-09
5.2.2 语法
STR_TO_DATE(str, format)
-
str是要转换的字符串。 -
format是字符串的格式,选项同date_format函数
5.3 字符转数字
直接使用+0即可
select ('1' + 0);
结果 : 1
6.聚合函数
6.1 count():取数量。
6.1.1 常用语法
count(distinct 字段):
示例:查询订单表中共有多少种商品,SQL如下:
select count(distinct good_id) from t_order
6.1.2 常用形式性能问题
请参考这篇文章:mysql进阶-不同的count()性能-CSDN博客
6.2 avg()
avg():求平均值。
示例:
表中存在如下数据:

select avg(score) from t_score;
结果:

这个函数的最终值,是去掉null之后做的除法
6.3 其他
sum():求和
max():求最大值
min():求最小值
7. 其他函数
group_concat 与 find_in_set 这两个函数的使用案例,
请看这篇文章:分类分级数据统计-CSDN博客
本次分享至此。
相关文章:
mysql基础-常用函数汇总
目录 1. 查询技巧 2. 时间函数 2.1 now() 2.2 current_date() 2.3 时间差timestampdiff()与datediff() 2.4 其他时间函数 3. 字符函数 3.1 截取函数 3.2 分割函数 3.3 left与right函数 3.4 其他函数 4. 数字函数 5. …...
COCO数据格式的json文件内容
COCO(Common Objects in Context)数据集现在有3种标注类型:object instances(目标实例), object keypoints(目标上的关键点), 和image captions(看图说话),使用JSON文件存储,包含了对图像中目标的边界框、类别标签、分割掩码等信息。 COCO标注文件是一个包含多个字…...
AI-数学-高中-3.二次函数的根的分布问题的解题方法
原作者学习视频:二次】3二次函数根分布问题(中档)_哔哩哔哩_bilibili 一、伟达定理(根与0比较的二次函数) 示例: 二、画图法: 1.开口方向的确定,有的示例可能存在向上、下两种情况…...
golang中gorm使用
前言 记录下go语言操作mysql数据库,选用gorm,gorm是一个流行的对象关系映射(ORM)库,用于简化与数据库的交互。 接入步骤 安装gorm:首先,你需要使用Go模块来安装gorm。在终端中运行以下命令&…...
centoss7安装mysql详细教程
【MySQL系列】在Centos7环境安装MySQL_centos7安装mysql-CSDN博客 【MySQL系列】在Centos7环境安装MySQL_centos7安装mysql-CSDN博客 【MySQL系列】在Centos7环境安装MySQL_centos7安装mysql-CSDN博客...
SpringBoot-拓展
邮件 依赖 <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId>配置 spring.mail.username邮箱 spring.mail.password授权码 spring.mail.hostsmtp.qq.com # 开启加密验证 spring.mail.properties.mai…...
用于查询性能预测的计划结构深度神经网络模型--大数据计算基础大作业
用于查询性能预测的计划结构深度神经网络模型 论文阅读和复现 24.【X1.1】 在关系数据库查询优化领域,对查询时间的估计准确性直接决定了查询优化结果,进而影响到数据库整体的查询效率。但由于数据库自身的复杂性,查询时间受到数据分布、数据…...
MySQL5.7用于控制副本服务器的 SQL 语句
官网地址:MySQL :: MySQL 5.7 Reference Manual :: 13.4.2 SQL Statements for Controlling Replica Servers 欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯. MySQL 5.7 参考手册 / ... / CHANGE M…...
stable diffusion 人物高级提示词(四)朝向、画面范围、远近、焦距、机位、拍摄角度
一、朝向 英文中文front view正面Profile view / from side侧面half-front view半正面Back view背面(quarter front view:1.5)四分之一正面 prompt/英文中文翻译looking at the camera看向镜头facing the camera面对镜头turned towards the camera转向镜头looking away from …...
C#.Net学习笔记——设计模式六大原则
***************基础介绍*************** 1、单一职责原则 2、里氏替换原则 3、依赖倒置原则 4、接口隔离原则 5、迪米特法原则 6、开闭原则 一、单一职责原则 举例:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修…...
go 修改postgresql的配置参数
postgresql.conf与postgresql.auto.conf的区别 postgresql.auto.conf的优先级高于postgresql.conf,如果一个参数同时存在postgresql.auto.conf和postgresql.conf里面,系统会先读postgresql.auto.conf的参数配置。 使用alter system set修改的是postgres…...
解决word图片格式错乱、回车图片不跟着换行的问题
解决word图片格式错乱、回车图片不跟着换行的问题 1.解决方法。 先设置为嵌入型 但是设置的话会出现下面的问题。图片显示不全。 进一步设置对应的行间距,原先设置的是固定值,需要改为1.5倍行距的形式,也就是说不能设置成固定值就可以。...
密码学(二)
文章目录 前言一、Certificate Authorities二、Key Agreement Protocols 前言 本文来自 Intel SGX Explained 请参考:密码学(一) 一、Certificate Authorities 非对称密钥密码学中的公钥和私钥假设每个参与方都拥有其他参与方的正确公钥。…...
mysql进阶-视图
目录 1. 用途 2. 语法 2.1 创建或替换视图 2.2 修改视图 2.3 查看视图: 2.4 删除视图: 3. 其他 3.1 操作视图 3.2 迁移数据库 1. 用途 视图可以理解为一个复杂查询的简称,它可以帮助我们简化查询,主要用于报表查询:例如…...
力扣-34. 在排序数组中查找元素的第一个和最后一个位置
文章目录 力扣题目代码 力扣题目 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算…...
Cesium笔记 初始化 使用Vue-Cesium 组件
参考 A Vue 3 based component library of CesiumJS for developers | Vue for CesiumVue for Cesium, a Vue 3.x based component library of CesiumJS for GISerhttps://zouyaoji.top/vue-cesium/#/zh-CN/component/quickstart...
QTday2作业
思维导图: 使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数; 将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断u界面上输入的账号是否为"admin",…...
scVI与MultiVI
scVI:https://docs.scvi-tools.org/en/stable/user_guide/models/scvi.html MultiVI:https://docs.scvi-tools.org/en/stable/user_guide/models/multivi.html 目录 scVI生成推理任务 MultiVI生成推理 scVI single cell variational inference提出了一个…...
java Servlet体育馆运营管理系统myeclipse开发mysql数据库网页mvc模式java编程计算机网页设计
一、源码特点 JSP 体育馆运营管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统采用serlvetdaobean,系统具有完整的源代码和数据库,系统主要采用 B/S模式开发。 java Servlet体育馆运营管理系…...
2、UML类图
UML(Unified Modeling Language)统一建模语言,用来进行设计软件的可视化建模语言。 2.1 类图概述 类类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及他们与其他类的关系等。类图是面向对象建模的主要组成部分。 2.…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)
Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
Linux系统部署KES
1、安装准备 1.版本说明V008R006C009B0014 V008:是version产品的大版本。 R006:是release产品特性版本。 C009:是通用版 B0014:是build开发过程中的构建版本2.硬件要求 #安全版和企业版 内存:1GB 以上 硬盘…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
CSS3相关知识点
CSS3相关知识点 CSS3私有前缀私有前缀私有前缀存在的意义常见浏览器的私有前缀 CSS3基本语法CSS3 新增长度单位CSS3 新增颜色设置方式CSS3 新增选择器CSS3 新增盒模型相关属性box-sizing 怪异盒模型resize调整盒子大小box-shadow 盒子阴影opacity 不透明度 CSS3 新增背景属性ba…...
用 Rust 重写 Linux 内核模块实战:迈向安全内核的新篇章
用 Rust 重写 Linux 内核模块实战:迈向安全内核的新篇章 摘要: 操作系统内核的安全性、稳定性至关重要。传统 Linux 内核模块开发长期依赖于 C 语言,受限于 C 语言本身的内存安全和并发安全问题,开发复杂模块极易引入难以…...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...
DAY 45 超大力王爱学Python
来自超大力王的友情提示:在用tensordoard的时候一定一定要用绝对位置,例如:tensorboard --logdir"D:\代码\archive (1)\runs\cifar10_mlp_experiment_2" 不然读取不了数据 知识点回顾: tensorboard的发展历史和原理tens…...
未授权访问事件频发,我们应当如何应对?
在当下,数据已成为企业和组织的核心资产,是推动业务发展、决策制定以及创新的关键驱动力。然而,未授权访问这一隐匿的安全威胁,正如同高悬的达摩克利斯之剑,时刻威胁着数据的安全,一旦触发,便可…...
