MySQL内置函数全解析

 更新时间:2025年12月22日 10:11:23   作者:Arcane Code  
MySQL内置函数包括日期、字符串、数学、进制转换及其他实用函数,用于简化数据库操作和数据处理,本文给大家介绍MySQL内置函数全解析,感兴趣的朋友跟随小编一起看看吧

一、内置函数是什么?

内置函数可以理解为 MySQL 写好放入“工具箱”里的小工具,你不需要知道这些工具内部是怎么制造的,只需要知道给它什么,它还你什么。

二、日期函数

  • CURRENT_DATE():问数据库,“今天是几号?”,然后数据库会返回今天的日期

  • current time():获取系统当前的“时分秒”信息,不包含日期

  • current_timestamp():返回当前系统的日期和时间

  • date():提取日期的某一部分

  • DATE_ADD(DATE_SUB):给一个日期加上(或减去)指定的时间间隔


这里的INTERVAL是必须要加上去的

  • DATEDIFF:计算两个日期的间隔时间

  • NOW:计算两个日期的间隔时间

三、字符串函数

  • 基础信息与拼接:CHARSET:查看字符串的字符集,CONCAT:把多个字符串拼成一个。

  • 大小写与比较:UCASE(str) / LCASE(str):转大写 / 转小写,STRCMP(s1, s2): 比较两个字符串。相等返回 0,左边小返回 -1,左边大返回 1

  • 查找与位置:INSTR: 返回子串在主串中第一次出现的位置,LENGTH: 返回字符串的字节长度

  • 提取与截取:LEFT(str, len): 从左边起取 len 个字符,SUBSTRING(str, start, [len]): 从指定位置开始截取

  • 修改与清理:REPLACE(str, from, to): 替换内容,LTRIM(str) / RTRIM(str): 去掉左边 / 右边的空格

四、数学函数

MySQL 的数学函数就像是内置在数据库里的“科学计算器”。在处理订单金额、统计分数、生成随机数等场景中非常有用

  • 取整函数:ABS(x): 取绝对值(正数),CEIL(x) / CEILING(x): 向上取整(进一法)。返回不小于 x 的最小整数,FLOOR(x): 向下取整(去尾法)。返回不大于 x 的最大整数

  • 精确控制:ROUND(x, d): 四舍五入。d 是保留的小数位数,TRUNCATE(x, d): 截断。不论大小,直接把 d 位之后的小数全部扔掉

  • 幂运算与开方:POW(x, y) / POWER(x, y): xy次方,SQRT(x): 开平方根,MOD(n, m): 取模(求余数)

  • ==随机数生成 ==:RAND(): 返回一个 01 之间的浮点随机数

  • 进制转换与常量:CONV(n, from_base, to_base): 进制转换(比如把 10 进制转 16 进制),BIN(x): 转二进制,PI(): 获取圆周率

五、其它函数

  • user():查询当前用户

  • md5(str):对一个字符串进行md5摘要,摘要后得到一个32位字符串

  • database():显示当前使用的数据库

到此这篇关于MySQL内置函数全解析的文章就介绍到这了,更多相关MySQL内置函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL数据库索引及底层数据结构详解

    MySQL数据库索引及底层数据结构详解

    MySQL默认使用B+树索引和InnoDB引擎,索引通过有序结构加速数据检索,但增加存储与维护成本,B+树优化了磁盘读写与范围查询效率,成为主流选择,本文介绍MySQL数据库索引及底层数据结构的相关知识,感兴趣的朋友一起看看吧
    2025-08-08
  • mysql5.7的安装及Navicate长久免费使用的实现过程

    mysql5.7的安装及Navicate长久免费使用的实现过程

    这篇文章主要介绍了mysql5.7的安装及Navicate长久免费使用的实现过程,本文给大家分享问题及解决方法,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-11-11
  • 在linux服务器上配置mysql并开放3306端口的操作步骤

    在linux服务器上配置mysql并开放3306端口的操作步骤

    这篇文章主要介绍了在linux服务器上配置mysql并开放3306端口,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09
  • Mysql如何删除数据库表中的某一列

    Mysql如何删除数据库表中的某一列

    这篇文章主要介绍了Mysql如何删除数据库表中的某一列,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • MySQL中外键的创建、约束以及删除

    MySQL中外键的创建、约束以及删除

    这篇文章主要给大家介绍了关于MySQL中外键的创建、约束以及删除的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • MySQL MVVC多版本并发控制的实现详解

    MySQL MVVC多版本并发控制的实现详解

    在多版本并发控制中,为了保证数据操作在多线程过程中,保证事务隔离的机制,降低锁竞争的压力,保证较高的并发量。在每开启一个事务时,会生成一个事务的版本号,被操作的数据会生成一条新的数据行
    2022-08-08
  • mysql数据库如何实现亿级数据快速清理

    mysql数据库如何实现亿级数据快速清理

    这篇文章主要介绍了mysql数据库实现亿级数据快速清理的方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2018-04-04
  • MySQL WITH AS创建临时表的实现

    MySQL WITH AS创建临时表的实现

    在MySQL中,我们可以通过WITH AS方法创建临时结果集,本文主要介绍了MySQL WITH AS创建临时表的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-08-08
  • 详解Windows Server 2012下安装MYSQL5.7.24的问题

    详解Windows Server 2012下安装MYSQL5.7.24的问题

    这篇文章主要介绍了Windows Server 2012下安装MYSQL5.7.24的详细过程,本文通过图文并茂实例代码相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • mysql中profile的使用方法教程

    mysql中profile的使用方法教程

    这篇文章主要给大家介绍了关于mysql中profile的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-09-09

最新评论