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():显示当前使用的数据库

相关推荐
Databend13 小时前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
李白客2 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence2 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将2 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils3 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波3 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6004 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL4 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_4 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库