最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

【MySQL】内置函数

网站源码admin1浏览0评论

【MySQL】内置函数

日期函数

函数名称

描述

current_date()

当前日期

current_time()

当前时间

current_timestamp()

当前时间戳

date(datetime)

返回datetime参数的日期部分

date_add(date, interval d_value_type)

在date中添加日期或时间,interval后的数值单位可以是:year、minute、second、day

date_sub(date, interval d_value_type)

在date中减去日期或时间,interval后的数值单位可以是:year、minute、second、day

datediff(date1, date2)

两个日期的差,单位是天

now()

当前日期时间

查看日期类的函数

current_date: current_date可以显示当前的日期,年月日

current_time: current_time可以显示当前的时间

current_timestamp: current_timestamp可以显示当前的日期和时间

date date函数只会显示年月日,相当于我传递一个年月日和时分秒的类型,会被强制转换为年月日,并输出

now: 和current_timestamp差不多,也是返回当前日期和时间

与计算相关的日期类的函数

date_add date_add也可以直接在内部嵌套函数,然后算多少天后是什么日期

interval除了可以跟day还可以跟minute,还可以跟second。

date_sub date_sub和date_add相反,这个是算之前的时间。

datediff 这个是算两个时间段之间相隔了多少天

从这里可以发现,这个函数是前面的值减去后面的值,如果我们反过来应该是负数,不信我们可以试试。

字符串函数

函数名称

描述

charset(str)

返回字符串字符集

concat(string2 [, …])

连接字符串

instr(string, substring)

返回substring在string中出现的位置,没有返回0

ucase(string2)

转换成大写

lcase(string2)

转换成小写

left(string2, length)

从string2的左边起取length个字符

length(string)

string的长度

replace(str, search_str, replace_str)

在str中用replace_str替换search_str

strcmp(string1, string2)

逐字符比较两个字符串大小

substring(str, position [, length])

从str的position开始,取length个字符

ltrim(string)

去除前空格

rtrim(string)

去除后空格

trim(string)

去除前后空格

charset函数

charset会返回字符集

我们随便查一张表可以看见编译方式是utf8.

concat函数

concat函数用于连接两个字符或者字符串。

instr

instr会找到第二个参数在第一个参数中的位置,如果没有就返回0。

可以看见在9号位置,而且我们可以发现,这里不是像数组一样,从下标0开始的,而是从下标1开始的。

显示大写或者显示小写函数(ucase && lcase)

ucase会将获取的所有字符转化为大写字母,lcase会将所有获取到的字符转化为小写字母

left函数

从左边开始向右取字符

既然有left肯定就有right函数,从右边开始向左取length个字符。

length函数

输出字符串长度

replace函数

可以看见上面虽然替换了但是原本的表中的数据时不会改变的,只是展现出来了替换的效果。

substring函数

取出子串和C语言中的substring差不多。

三个trim函数

ltrim是去掉前空格,rtrim是去掉后空格,trim是去掉所有空格。 可以看一下效果:

数学函数

函数名称

描述

abs(number)

绝对值函数

bin(decimal_number)

十进制转换二进制

hex(decimalNumber)

转换成十六进制

conv(number, from_base, to_base)

进制转换

ceiling(number)

向上取整

floor(number)

向下取整

format(number, decimal_places)

格式化,保留小数位数

hex(decimalNumber)

转换成十六进制

rand()

返回随机浮点数,范围 [0.0, 1.0)

mod(number, denominator)

取模,求余

这些函数很简单,所以我们挑两个来讲解

mod函数

mod可以去摸:

向上取整和想下取整

向上取整和向下取整的区别:

取整方式

说明

示例

向上取整(ceiling)

总是向更大的整数取整(进一)

ceil(3.2) = 4ceil(-3.2) = -3

向下取整(floor)

总是向更小的整数取整(去尾)

floor(3.8) = 3floor(-3.8) = -4

搞懂了这个,我们来试一下:

conv(转换进制)

conv可以将任何数的任何进制转化为任何进制: 这里就是将10进制的124转化为二进制

在这里插入图片描述

其他函数

user函数

user函数可以看现在是谁在访问MySQL

ifnull函数

ifnull和三目运算符差不多,当第一个值不是null的时候就是第一个结果,当第一个是null的时候就选择第二个参数做结果:

总结

在本文中,我们重点介绍了 MySQL 的日期函数、字符串函数和数学函数,并分别讲解了它们的常见用法和实际应用场景。通过这些内置函数,我们可以更方便地处理日期计算、字符串操作和数学运算,从而提高 SQL 查询的效率和可读性。 掌握并合理使用这些函数,不仅能简化 SQL 语句,还能优化数据处理流程。在实际开发中,我们应根据具体需求选择合适的函数,以提高数据库操作的灵活性和效率。希望本文能帮助大家更深入地理解 MySQL 内置函数,提升数据库开发能力!

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论