MySQL中的函数

系列文章目录

MySQL常见的几种约束


文章目录

  • 系列文章目录
  • 前言
  • 一、单行函数
    • 1.字符串函数 (String StringBuilder)
    • 2.数值函数 (Math)
    • 3.日期与时间函数
    • 4.流程函数( IF SWITCH)
    • 5.JSON函数
    • 6.其他函数
  • 二、多行函数
  • 总结


在这里插入图片描述

前言

MySQL中提供了大量函数来简化用户对数据库的操作,比如字符串的处理、日期的运算、数值的运算等等。使用函数可以大大提高SELECT语句操作数据库的能力,同时也给数据的转换和处理提供了方便。

函数只是对查询结果中的数据进行处理,不会改变数据库中数据表的值。MySQL中的函数主要分为单行函数和多行函数两大类,下面我们将详细讲解这两大类函数。


一、单行函数

单行函数是指对每一条记录输入值进行计算,并得到相应的计算结果,然后返回给用户,也就是说,每条记录作为一个输入参数,经过函数计算得到每条记录的计算结果。

常用的单行函数主要包括字符串函数、数值函数、日期与时间函数、流程函数以及其他函数。

1.字符串函数 (String StringBuilder)

函数描述
CONCAT(str1, str2, ···, strn)将str1、str2···strn拼接成一个新的字符串
INSERT(str, index, n, newstr)将字符串str从第index位置开始的n个字符替换成字符串newstr
LENGTH(str)获取字符串str的长度
LOWER(str)将字符串str中的每个字符转换为小写
UPPER(str)将字符串str中的每个字符转换为大写
LEFT(str, n)获取字符串str最左边的n个字符
RIGHT(str, n)获取字符串str最右边的n个字符
LPAD(str, n, pad)使用字符串pad在str的最左边进行填充,直到长度为n个字符为止
RPAD(str, n, pad)使用字符串pad在str的最右边进行填充,直到长度为n个字符为止
LTRIM(str)去除字符串str左侧的空格
RTRIM(str)去除字符串str右侧的空格
TRIM(str)去除字符串str左右两侧的空格
REPLACE(str,oldstr,newstr)用字符串newstr替换字符串str中所有的子字符串oldstr
REVERSE(str)将字符串str中的字符逆序
STRCMP(str1, str2)比较字符串str1和str2的大小
SUBSTRING(str,index,n)获取从字符串str的index位置开始的n个字符

2.数值函数 (Math)

函数描述
ABS(num)返回num的绝对值
CEIL(num)返回大于num的最小整数(向上取整)
FLOOR(num)返回小于num的最大整数(向下取整)
MOD(num1, num2)返回num1/num2的余数(取模)
PI()返回圆周率的值
POW(num,n)/POWER(num, n)返回num的n次方
RAND(num)返回0~1之间的随机数
ROUND(num, n)返回x四舍五入后的值,该值保留到小数点后n位
TRUNCATE(num, n)返回num被舍去至小数点后n位的值

3.日期与时间函数

函数描述
CURDATE()返回当前日期
CURTIME()返回当前时间
NOW()返回当前日期和时间
SYSDATE()返回该函数执行时的日期和时间
DAYOFYEAR(date)返回日期date为一年中的第几天
WEEK(date)/WEEKOFYEAR(date)返回日期date为一年中的第几周
DATE_FORMAT(date, format)返回按字符串format格式化后的日期date
DATE_ADD(date, INTERVAL expr unit) /ADDDATE(date, INTERVAL expr unit)返回date加上一个时间间隔后的新时间值
DATE_SUB(date, INTERVAL expr unit) /SUBDATE(date, INTERVAL expr unit)返回date减去一个时间间隔后的新时间值
DATEDIFF(date1, date2)返回起始日期date1与结束日期date2之间的间隔天数

4.流程函数( IF SWITCH)

间隔类型描述
IF(condition, t, f)如果条件condition为真,则返回t,否则返回f
IFNULL(value1, value2)如果value1不为null,则返回value1,否则返回value2
NULLIF(value1, value2)如果value1等于value2,则返回null,否则返回value1
CASE value WHEN [value1] THEN result1 [WHEN [value2] THEN result2 …] [ELSE result] END如果value等于value1,则返回result1,···,否则返回result
CASE WHEN [condition1] THEN result1 [WHEN [condition2] THEN result2 …] [ELSE result] END如果条件condition1为真,则返回result1,···,否则返回result

5.JSON函数

函数描述
JSON_APPEND()在JSON文档中追加数据
JSON_INSERT ()在JSON文档中插入数据
JSON_REPLACE ()替换JSON文档中的数据
JSON_REMOVE ()从JSON文档的指定位置移除数据
JSON_CONTAINS()判断JSON文档中是否包含某个数据
JSON_SEARCH()查找JSON文档中给定字符串的路径

6.其他函数

函数描述
DATABASE()返回当前数据库名
VERSION()返回当前MySQL的版本号
USER()返回当前登录的用户名
INET_ATON(IP)返回IP地址的数字表示
INET_NTOA返回数字代表的IP地址
PASSWORD(str)实现对字符串str的加密操作
FORMAT(num, n)实现对数字num的格式化操作,保留n位小数
CONVERT(data, type)实现将数据data转换成type类型的操作

二、多行函数

多行函数是指对一组数据进行运算,针对这一组数据(多行记录)只返回一个结果,也称为分组函数。
多行函数包含:

函数描述
COUNT()统计表中记录的数目
SUM()计算指定字段值的总和
AVG()计算指定字段值的平均值
MAX()统计指定字段值的最大值
MIN()统计指定字段值的最小值

总结

除了多行函数(max,min,count,sum,avg),都是单行函数。

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

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

相关文章

TreeMap的底层实现

0. 你需要知道的TreeMap的内置属性 0.1 节点属性 K key; // 键 V value; // 值 Entry<K,V> left; // 左子节点 Entry<K,V> right; // 右子节点 Entry<K,V> parent; // 父节点 boolean color; // 节点的颜色0.2 成员变量 //比较器对象private f…

rsync下行同步+inotify实时同步部署

目录 一、rsync简介 1.2 同步方式 1.2.1 全量备份 1.2.2 增量备份 1.2.3 差量备份 1.3 rsync的特点 1.4 rsync的优势与不足 1.5 rsync与cp、scp对比 1.6 rsync同类服务 二、rsync源服务器的关系 三、配置rsync源 3.1 基本思路 3.2 配置文件rsyncd.conf 3.3 独立…

HDFS Erasure coding-纠删码介绍和原理

HDFS Erasure coding-纠删码介绍和原理 三副本策略弊端Erasure Coding&#xff08;EC&#xff09;简介Reed- Solomon&#xff08;RS&#xff09;码 EC架构 三副本策略弊端 为了提供容错能力&#xff0c;hdfs回根据replication factor&#xff08;复制因子&#xff09;在不同的…

idea application.yml配置文件没有提示或读不到配置

1.首先确定你的resources文件夹正常且yml文件图表和下面一样 不一样的右键去设置 2.确保你已经缩进了且层级关系正常 3.如果以上都不是&#xff0c;先考虑删除.idea重开试试 4.以上解决不了就装以下两个插件解决

目标检测之3维合成

现在有一系列的图片&#xff0c;图片之间可以按照z轴方向进行排列。图片经过了目标检测&#xff0c;输出了一系列的检测框&#xff0c;现在的需求是将检测框按类别进行合成&#xff0c;以在3维上生成检测结果。 思路&#xff1a;将图片按照z轴方向排列&#xff0c;以z轴索引作…

微分流形2:流形上的矢量场和张量场

来了来了&#xff0c;切向量&#xff0c;切空间。流形上的所有的线性泛函的集合&#xff0c;注意是函数的集合。然后取流形上的某点p&#xff0c;它的切向量为&#xff0c;线性泛函到实数的映射。没错&#xff0c;是函数到实数的映射&#xff0c;是不是想到了求导。我们要逐渐熟…

Django模型将模型注释同步到数据库

1、安装django-comment-migrate库 pip install django-comment-migrate 2、将库注册到settings.py文件中 INSTALLED_APPS [...django_comment_migrate, # 表注释... ] 3、加注释 3.1、给模型&#xff08;表&#xff09;加注释 在模型的class Meta中编辑 verbose_name&…

UML/SysML建模工具更新(2023.7)(1-5)有国产工具

DDD领域驱动设计批评文集 欢迎加入“软件方法建模师”群 《软件方法》各章合集 最近一段时间更新的工具有&#xff1a; 工具最新版本&#xff1a;Visual Paradigm 17.1 更新时间&#xff1a;2023年7月11日 工具简介 很用心的建模工具。支持编写用例规约。支持文本分析和C…

TCP三次握手和四次挥手以及11种状态(二)

11种状态 1、一开始&#xff0c;建立连接之前服务器和客户端的状态都为CLOSED&#xff1b; 2、服务器创建socket后开始监听&#xff0c;变为LISTEN状态&#xff1b; 3、客户端请求建立连接&#xff0c;向服务器发送SYN报文&#xff0c;客户端的状态变味SYN_SENT&#xff1b; 4、…

数据结构---树和二叉树

这里写目录标题 树和二叉树的定义树的定义树的基本术语线性结构和树形结构的比较二叉树的定义起因定义 案例引入前缀码编码表达式的实现二叉树的抽象类型定义 二叉树的性质和存储结构二叉树的性质二叉树的特殊形式满二叉树完全二叉树 完全二叉树的两个性质二叉树的存储结构顺序…

ubuntu目录分析

在Ubuntu根目录下&#xff0c;以下是一些常见文件夹的含义&#xff1a; /bin&#xff1a;存放可执行文件&#xff0c;包含一些基本的命令和工具。 /boot&#xff1a;存放启动时所需的文件&#xff0c;如内核和引导加载程序。 /dev&#xff1a;包含设备文件&#xff0c;用于与硬…

IntelliJ IDEA 2023.2 新版本,拥抱 AI

IntelliJ IDEA 近期连续发布多个EAP版本&#xff0c;官方在对用户体验不断优化的同时&#xff0c;也新增了一些不错的功能&#xff0c;尤其是人工智能助手补充&#xff0c;AI Assistant&#xff0c;相信在后续IDEA使用中&#xff0c;会对开发者工作效率带来不错的提升。 以下是…

Ai创作系统ChatGPT源码搭建教程+附源码

系统使用Nestjs和Vue3框架技术&#xff0c;持续集成AI能力到本系统&#xff01; 更新内容&#xff1a; 同步官方图片重新生成指令 同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle) 同步官方 Zoom 指令 单张图片无限缩放 Zoom out 2x | Zoom out 1.5x 新增GP…

移动IP的原理

目的 使得移动主机在各网络之间漫游时&#xff0c;仍然能保持其原来的IP地址不变 工作步骤 代理发现与注册 主机A&#xff1a;主机A移动到外地网络后&#xff0c;通过“代理发现协议”&#xff0c;与外地代理建立联系&#xff0c;并从外地代理获得一个转交地址&#xff0c;…

Nginx动静分离、资源压缩、负载均衡、黑白名单、防盗链等实战

一、前言 Nginx是目前负载均衡技术中的主流方案&#xff0c;几乎绝大部分项目都会使用它&#xff0c;Nginx是一个轻量级的高性能HTTP反向代理服务器&#xff0c;同时它也是一个通用类型的代理服务器&#xff0c;支持绝大部分协议&#xff0c;如TCP、UDP、SMTP、HTTPS等。 二、…

SSD市场上演大洗牌,61TB豪华「别墅」横空出世

最近几年 SSD 售价是肉眼可见的下降&#xff0c;相信大伙儿没少跟着喝汤吃肉吧。 有人将这些变化归结于全球市场过饱和&#xff0c;需求下滑。 也有人认为国产 NAND 闪存崛起是压垮 SSD 高昂售价的最后一根稻草。 在小忆看来&#xff0c;不论是需求矛盾还是国产崛起不过是其中…

Mysql适用于初学者的前期入门资料

文章目录 前言一、SQL语句分类二、SQL语句的书写规范三.数据库操作四、MySQL字符集1、问题① 五、UTF8和UTF8MB4的区别六、数据库对象七、数据类型八、表的基本创建1、创建表2、查看表3、删除表4、修改表结构5、复制表的结构 九、数据库字典十、表的约束1、非空约束(NOT NULL)2…

在简历上写了“精通”后,拥有工作经验的我被面试官问到窒息

前言 如果有真才实学&#xff0c;写个精通可以让面试官眼前一亮&#xff01; 如果是瞎写&#xff1f;基本就要被狠狠地虐一把里&#xff01; 最近在面试&#xff0c;我现在十分后悔在简历上写了“精通”二字… 先给大家看看我简历上的技能列表&#xff1a; 熟悉软件测试理论基…

2023年深圳杯数学建模B题电子资源版权保护问题

2023年深圳杯数学建模 B题 电子资源版权保护问题 原题再现&#xff1a; 版权又称著作权&#xff0c;包括发表权、署名权、修改权、保护作品完整权、复制权、发行权、出租权、展览权、表演权、放映权、广播权、信息网络传播权、摄制权、改编权、翻译权、汇编权及应当由著作权人…

微信如何提高回复信息速度?

规范流程话术有什么用&#xff1f;为了提高回复客户的效率和质量&#xff0c;可以事先设计好的一套标准化的对话模板。它通常包括多个环节和问题&#xff0c;帮助客服人员或销售人员在与客户沟通时&#xff0c;按照标准化的流程进行&#xff0c;以提高工作效率和客户满意度。 如…