MySQL之内置函数

目录

一、日期函数

二、字符串函数

三、数学函数

四、其它函数


一、日期函数

常见的日期函数如下:

函数名称说明
current_date()获取当前日期
current_time()获取当前时间
current_timestamp()获取当前时间戳
date_add(date, interval d_value_type)在date中添加日期或时间,interval后的数值单位可以是:year、month、day、hour、minute、second
date(datetime)获取datetime参数的日期部分
date_sub(date, interval d_value_type)在date中减去日期或时间,interval后的数值单位可以是:year、month、day、hour、minute、second
datediff(date1, date2)获取两个日期的差,单位是天
now()获取当前日期时间

具体使用说明:

~ current_date函数

该函数的作用是获取当前的日期,也就是年-月-日的格式。

mysql> select current_date();

在Linux下获取的日期如下: 

而我在写这一篇博客的时候,其日期与获取到的日期相同:

~ current_time函数

该函数的作用是获取当前的时间,也就是时-分-秒的格式。

mysql> select current_time();

~ current_timestamp函数

该函数的作用是获取当前的时间戳,也就是年-月-日-时-分-秒的格式,以日期时间格式进行显示。

mysql> select current_timestamp();

~ now函数

now函数的作用是获取当前的日期时间。如下:

mysql> select now();

~ date函数

该函数的作用是获取datetime参数的日期部分,也就是对于 年-月-日-时-分-秒 的格式,该函数可以把其转换成 年-月-日 的格式。

mysql> select date('2023-10-01 09:36:40');

我们也可以让date函数和now函数搭配使用,就可以获得当前的日期。这样看来,其作用就和current_date函数相同了。

~ date_add函数

date_add函数的作用是在一个日期的基础上添加日期或时间。如下:

可以加上天数:

mysql> select date_add(current_date(), interval 5 day);

也可以加上时分秒:

mysql> select date_add('2024-8-16 12:36:40', interval 5 second);

如果在date_add函数中添加的日期/时间为负值,则相当于在日期的基础上减去日期/时间。如下:

~ date_sub函数 

date_sub函数的作用是在日期的基础上减去日期或时间。如下:

mysql> select date_sub('2024-8-16 12:36:40', interval 5 second);

mysql> select date_sub('2024-8-16', interval 5 day);

 

同样的,如果在date_sub函数中减去的日期/时间为负值,则相当于在日期的基础上添加日期/时间。 

~ datediff函数

datediff函数的作用是获取两个日期的差(前者减去后者),单位是天。如下:

mysql> select datediff('2024-8-16','2004-3-17');

二、字符串函数

常见的字符串函数如下:

函数名称说明
charset(str)获取字符串使用的字符集
concat(str1, str2 [, …])获取连接后的字符串
instr(str, substr)获取substr在str中首次出现的位置,没有出现返回0
ucase(str)获取转换成大写后的字符串
lcase(str)获取转换成小写后的字符串
left(str, length)从字符串的左边开始,向后截取length个字符
length(str)获取字符串占用的字节数
replace(str, search_str, replace_str)将字符串中的search_str替换成replace_str
strcmp(str1, str2)逐字符比较两个字符串的大小
substring(str, position [, length])从字符串的position开始,向后截取length个字符
ltrim(str)、rtrim(str)、trim(str)去除字符串的前空格、后空格、前后空格

具体使用说明: 

~ charset 函数

该函数的作用是获取字符串使用的字符集。

mysql> select charset('a');

mysql> select charset('你好');

~ concat 函数 

该函数的作用是获取连接后的字符串。也就是把多个字符串拼接在一起。

~ instr 函数

instr函数的作用是获取一个字符串在另一个字符串中首次出现的位置,如果没有出现则返回0。如下:MySQL中,字符串下标从1开始。

mysql> select instr('中国,美国,德国','美国');
mysql> select instr('中国,美国,德国','国');

没有出现的情况:

~ ucase 函数

ucase函数的作用是可以将字符串转换成大写后的字符串。如下:

mysql> select ucase('dfefefewf');

~ lcase 函数

lcase函数的作用是可以将字符串转换成小写后的字符串。如下:

mysql> select lcase('cdeCDCV');

~ left 函数

left函数的作用是从字符串的左边开始(也就是下标为1的位置),向后截取指定个数的字符。如下:

mysql> select left('csewdwec',4);

~ length 函数

length函数的作用是获取字符串占用的字节数。如下:

mysql> select length('cdscds');
mysql> select length('中国');

~ replace 函数

replace函数的作用是将字符串中的指定子字符串替换成另一个字符串,如下:

mysql> select replace('中国,美国,德国,英国','美','漂亮');

~ strcmp 函数

strcmp函数用于逐字符按照ASCII码比较两个字符串的大小,两个字符串大小相等返回0,前者大返回1,后者大返回-1。如下:

~ substring 函数

substring函数用于从字符串的指定位置开始,向后截取指定个数的字符。如下:

mysql> select substring('fvefeferf',2,4);

使用substring函数时,如果没有指定要截取的字符个数,则默认从指定位置开始截取到最后。如下:

mysql> select substring('fvefeferf',2);

~ ltrim、rtrim、trim 函数

trim函数用于去除字符串的前后空格。如下:

mysql> select trim('         refe          ') 结果;

ltrim和rtrim函数分别用于去除字符串的前空格和后空格。如下:

mysql> select ltrim('           dfe') 结果;
mysql> select rtrim('dfe           ') 结果;

三、数学函数

常见的数学函数如下:

函数名称说明
abs(number)绝对值函数
bin(decimal_number)十进制转换成二进制
hex(decimal_number)十进制转换成十六进制
conv(number, from_base, to_base)from_base进制转换成to_base进制
ceiling(number)向上取整
floor(number)向下取整
format(number, n)格式化,保留n位小数(四舍五入)
rand()生成随机浮点数,范围 [0.0, 1.0)
mod(number, denominator)求余

具体使用说明:

~ abs函数

abs函数用于获取一个数的绝对值。如下:

~ bin函数

bin函数用于将一个十进制数转换成二进制。如下:

~ hex函数

hex函数的作用是将一个十进制数转换成十六进制。如下:

~ conv函数

conv函数的作用是将一个数从一个进制转换成另一个进制。如下:

~ ceiling函数和floor函数

ceiling函数叫做向上取整,floor叫做向下取整。

三种取整方式:

ceiling函数的作用是对一个数进行向上取整。如下:

floor函数的作用是对一个数进行向下取整。如下: 

~ format函数

format函数的作用是对数值进行格式化显示,以四舍五入的方式保留指定位数的小数。如下:

~ rand函数

rand函数的作用是生成0.0到1.0的随机浮点数。如下:

如果想要生成0到100的随机数,可以用生成的随机浮点数乘以100,如下:

同样的,可以使用format对其进行格式化显示:

~ mod函数 

mod函数的作用是对数值进行求余运算。如下:

四、其它函数

~ user函数

user函数的作用是获取MySQL连接的当前用户名和主机名。如下:

~ md5函数

md5函数的作用是对一个字符串进行md5摘要,如下:无论是多长的字符串,摘要后得到的字符串都是32位的字符串。

~ password函数

password函数用于对用户数据进行加密。如下:

~ ifnull函数

ifnull函数接受两个参数,如果第一个参数不为null则返回第一个参数值,否则返回第二个参数值。如下:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Jenkins Pipeline 中通过勾选参数来控制是否构建 Docker 镜像

1.定义参数: 使用 booleanParam 定义一个布尔参数,示例如下 booleanParam(name: BUILD_DOCKER, description: 是否构建Docker镜像, defaultValue: false)2.使用参数: 在 stage 中,根据参数的值决定构建方式: stage(编…

如何把用过的试卷恢复?5个软件帮助你快速进行试卷清除

如何把用过的试卷恢复?5个软件帮助你快速进行试卷清除 要恢复或清除用过的试卷上的答案或标记,通常涉及去除笔记、擦除手写痕迹或处理扫描件中的内容。以下五款软件可以帮助你有效地清除试卷上的文字、答案或标记,并将其恢复到空白状态&…

云原生|浅谈云原生中的对象存储之MinIO 的使用

一、什么是对象储存 对象存储(Object Storage)以对象的形式存储和管理数据,这些对象可以是任何类型的数据,例如 PDF,视频,音频,文本或其他文件类型。对象存储使用分布式存储架构,数据…

大型语言模型:通过代码生成、调试和 CI/CD 集成改变软件开发的游戏规则

文章目录 1. 引言2. 代码生成2.1 提高开发人员的生产力2.2 训练与适应 3. 使用人工智能进行调试和修复错误3.1 提高准确性的创新工具3.2 定制解决方案 4. 无缝 CI/CD 集成4.1 CI/CD 集成人工智能:可靠部署的催化剂4.2 持续学习和改进4.3 缩小开发和运营之间的差距 5…

媒界:2025河南台球及配套设施展会3月举办

立足中原,辐射全国,壹肆柒中国国际台球产业博览会3月在郑州盛大举办; 2025中国(郑州)国际台球产业博览会(壹肆柒台球展) The 2025 China (Zhengzhou) International Billiards Industry Expo …

数据库中间件Mycat

Mycat是基于Java编写的实现了MySQL协议的数据库中间件,可以将它看成一个数据库代理,可以直接用MySQL客户端工具访问。其核心功能是分库分表和读写分离。 MyCat 是基于阿里开源的 Cobar 产品而研发,Cobar 的稳定性、可靠性、优秀的架构和性能…

【JAVA开源】基于Vue和SpringBoot的学科竞赛管理系统

本文项目编号 T 047 ,文末自助获取源码 \color{red}{T047,文末自助获取源码} T047,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

【Java 集合】List接口 —— ArrayList 与 LinkedList 详解

List接口继承自Collection接口,是单列集合的一个重要分支。 在List集合中允许出现重复的元素,所有的元素是以一种线性方式进行存储的,在程序中可以通过索引(类似于数组中的元素角标)来访问集合中的指定元素。另外&…

CSS清除浮动的多种方法

目录 非 VIP 用户可前往公众号回复“css”进行免费阅读 给浮动元素的祖先元素加高度 给 div 写一个 clear:both; 属性(margin 失效) clear:both; 隔墙法 clear:both; 内墙法 父级 div 定义伪类:after 和 zoom(推荐使用) overflow:hidden;(能够让 margin 生效) 非 …

九、成功版--windows上安装artifactory配置postgressql

centos上搞不定,windows上搞定了 现阶段是想用java写程序控制制品库,等以后研究多了需要写一些脚本的时候,在研究linux上安装artifactory(公司就用的linux安装的配置mysql,有空对着配一下linux的) 源码地…

文献管理不再难:20个Zotero插件帮你搞定

以下插件排序按照星标量进行排序,常用的插件大概是前20的样子,可以根据自己的需求进行插件的安装。 顺带提一句,插件不是越多越好,装多了可能会出现软件卡顿的情况。 1、Scholaread for Zotero 插件下载:插件下载 …

【智能大数据分析 | 实验一】MapReduce实验:单词计数

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈智能大数据分析 ⌋ ⌋ ⌋ 智能大数据分析是指利用先进的技术和算法对大规模数据进行深入分析和挖掘,以提取有价值的信息和洞察。它结合了大数据技术、人工智能(AI)、机器学习(ML&a…

阿里云云效多个ssh密钥对配置

实现功能 windows本地多个ssh密钥对,分别对应不同的阿里云账号的云效 实现办法 1.生成ssh密钥对 ssh-keygen -t rsa -f C:\xxx\id_rsa_customname(我这里C:\Users\admin\.ssh\id_rsa_customname) 2.配置.ssh目录的config文件 # ruiyi Host customnameHostName codeup.al…

java通过org.eclipse.milo实现OPCUA客户端进行连接和订阅

前言 之前写过一篇关于MQTT的方式进行物理访问的文章:SpringBoot集成MQTT,WebSocket返回前端信息_springboot mqtt websocket-CSDN博客 最近又接触到OPCUA协议,想通过java试试看能不能实现。 软件 在使用java实现之前,想着有没…

JVM 基础知识(基础组成 )

使用场景 线上系统突然宕机,系统无法访问,甚至直接 O0M;线上系统响应速度太慢,优化系统性能过程中发现 CPU 占用过高,原因也许是因为 JVM的 GC 次数过于频繁;新项目上线,需要设置 JVM的各种参数;等 JDK / JRE / JVM JDK JDK 全称 ( Java Development Kit ) ,是 Ja…

react + antDesign封装图片预览组件(支持多张图片)

需求场景:最近在开发后台系统时经常遇到图片预览问题,如果一个一个的引用antDesign的图片预览组件就有点繁琐了,于是在antDesign图片预览组件的基础上二次封装了一下,避免重复无用代码的出现 效果 公共预览组件代码 import React…

Llama 3.2来了,多模态且开源!AR眼镜黄仁勋首批体验,Quest 3S头显价格低到离谱

如果说 OpenAI 的 ChatGPT 拉开了「百模大战」的序幕,那 Meta 的 Ray-Ban Meta 智能眼镜无疑是触发「百镜大战」的导火索。自去年 9 月在 Meta Connect 2023 开发者大会上首次亮相,短短数月,Ray-Ban Meta 就突破百万销量,不仅让马…

xpath在爬虫中的应用、xpath插件的安装及使用

安装 1、打开谷歌浏览器进入扩展程序安装页面(右上角会有"开发者模式按钮")默认是关闭的,当安装此插件时需要把开发者模式打开。 2、下载下来的xpath_helper是zip格式的,需要解压缩即可安装。 3、重启浏览器,再次点击扩展程序即…

解密 Python 的 staticmethod 函数:静态方法的全面解析!

更多Python学习内容:ipengtao.com 在 Python 中,staticmethod 函数是一种装饰器,用于将函数转换为静态方法。静态方法与实例方法和类方法不同,它们不需要类实例作为第一个参数,也不需要类作为第一个参数,因…

微型丝杆的行业应用!

微型丝杆作为一种高精度、小尺寸的机械传动元件,在现代工业中扮演着重要角色,在多个行业中都有广泛的应用‌,主要包括以下几个方面: 1、医疗设备:在手术机器人中,微型丝杆能够实现精准定位和操作&#xff0…