MySQL基本函数

基本函数:

|----------------|------------------------------------|----------------------------------------|----------------------------------------------------------------------|
| 函数类别 | 函数名称 | 功能描述 | 示例及结果 |
| 数值函数 - 算术函数 | ABS(x) | 返回 x 的绝对值 | SELECT ABS(-5);返回5 |
| 数值函数 - 算术函数 | CEIL(x) | 返回大于或等于 x 的最小整数 | SELECT CEIL(3.14);返回4 |
| 数值函数 - 算术函数 | FLOOR(x) | 返回小于或等于 x 的最大整数 | SELECT FLOOR(3.14);返回3 |
| 数值函数 - 算术函数 | ROUND(x, d) | 将 x 四舍五入到 d 位小数,省略 d 则默认四舍五入到整数 | SELECT ROUND(3.14159, 2);返回3.14 |
| 数值函数 - 三角函数 | SIN(x) | 接受弧度值 x,返回正弦值 | SELECT SIN(RADIANS(30));返回约0.5(因需先将角度转弧度) |
| 数值函数 - 三角函数 | COS(x) | 接受弧度值 x,返回余弦值 | SELECT COS(RADIANS(60));返回约0.5 |
| 数值函数 - 三角函数 | TAN(x) | 接受弧度值 x,返回正切值 | SELECT TAN(RADIANS(45));返回1 |
| 字符串函数 - 长度与拼接 | LENGTH(str) | 返回字符串 str 的长度(以字节为单位) | SELECT LENGTH('Hello');返回5 |
| 字符串函数 - 长度与拼接 | CONCAT(str1, str2, ...) | 将多个字符串连接成一个字符串 | SELECT CONCAT('Hello', ', ', 'World');返回Hello, World |
| 字符串函数 - 查找与替换 | SUBSTRING(str, pos, len) | 从字符串 str 的位置 pos 开始,提取长度为 len 的子字符串 | SELECT SUBSTRING('Hello World', 7, 5);返回World |
| 字符串函数 - 查找与替换 | REPLACE(str, from_str, to_str) | 将字符串 str 中的所有 from_str 替换为 to_str | SELECT REPLACE('Hello World', 'World', 'MySQL');返回Hello MySQL |
| 日期和时间函数 - 获取当前 | NOW() | 返回当前的日期和时间,格式为 YYYY - MM - DD HH:MM:SS | 执行SELECT NOW();可能返回类似2023 - 10 - 05 14:30:00的结果 |
| 日期和时间函数 - 获取当前 | CURDATE() | 只返回当前的日期,格式为 YYYY - MM - DD | SELECT CURDATE();可能返回2023 - 10 - 05 |
| 日期和时间函数 - 获取当前 | CURTIME() | 只返回当前的时间,格式为 HH:MM:SS | SELECT CURTIME();可能返回14:30:00 |
| 日期和时间函数 - 计算 | DATE_ADD(date, INTERVAL expr unit) | 在日期 date 上加上一个时间间隔 expr,unit 表示时间间隔单位 | SELECT DATE_ADD('2023 - 10 - 05', INTERVAL 1 MONTH);返回2023 - 11 - 05 |
| 日期和时间函数 - 计算 | DATEDIFF(date1, date2) | 计算两个日期 date1 和 date2 之间的天数差 | SELECT DATEDIFF('2023 - 10 - 10', '2023 - 10 - 05');返回5 |
| 聚合函数 | COUNT(expr) | 返回满足条件的记录数,expr 为*时返回表中的所有记录数 | SELECT COUNT(*) FROM users;返回users表中的记录总数 |
| 聚合函数 | SUM(expr) | 返回数值列 expr 的总和 | SELECT SUM(price) FROM products;返回products表中price列的总和 |
| 聚合函数 | AVG(expr) | 返回数值列 expr 的平均值 | SELECT AVG(age) FROM students;返回students表中age列的平均值 |
| 聚合函数 | MAX(expr) | 返回列 expr 中的最大值 | SELECT MAX(score) FROM exams;返回exams表中score列的最大值 |
| 聚合函数 | MIN(expr) | 返回列 expr 中的最小值 | SELECT MIN(score) FROM exams;返回exams表中score列的最小值 |

字符串函数:

|--------------------------------|----------------------------------------------------|---------------------------------------------------------------|
| 函数名称 | 功能描述 | 示例及结果 |
| LENGTH(str) | 返回字符串 str 的长度(以字节为单位) | SELECT LENGTH('Hello');返回5 |
| CONCAT(str1, str2, ...) | 将多个字符串连接成一个字符串 | SELECT CONCAT('Hello', ', ', 'World');返回Hello, World |
| SUBSTRING(str, pos, len) | 从字符串 str 的位置 pos 开始,提取长度为 len 的子字符串 | SELECT SUBSTRING('Hello World', 7, 5);返回World |
| REPLACE(str, from_str, to_str) | 将字符串 str 中的所有 from_str 替换为 to_str | SELECT REPLACE('Hello World', 'World', 'MySQL');返回Hello MySQL |
| UPPER(str) | 将字符串 str 中的所有字符转换为大写 | SELECT UPPER('hello');返回HELLO |
| LOWER(str) | 将字符串 str 中的所有字符转换为小写 | SELECT LOWER('HELLO');返回hello |
| TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str) |
| LEFT(str, len) | 从字符串 str 的左侧开始,提取长度为 len 的子字符串 | SELECT LEFT('Hello World', 5);返回Hello |
| RIGHT(str, len) | 从字符串 str 的右侧开始,提取长度为 len 的子字符串 | SELECT RIGHT('Hello World', 5);返回World |
| FIND_IN_SET(str1, str2) | 在以逗号分隔的字符串 str2 中查找字符串 str1 的位置(从 1 开始计数),若未找到返回 0 | SELECT FIND_IN_SET('apple', 'banana,apple,orange');返回2 |
| INSERT(str, pos, len, newstr) | 在字符串 str 的位置 pos 开始,删除长度为 len 的子字符串,并插入 newstr | SELECT INSERT('Hello World', 7, 5, 'MySQL');返回Hello MySQL |

相关推荐
柱子jason44 分钟前
使用IOT-Tree消息流【标签读写】功能详细说明
数据库·物联网·时序数据库·influxdb·iot-tree
鲲志说2 小时前
电子证照系统国产化改造实践:从MongoDB到金仓数据库的平滑迁移与性能优化
大数据·数据库·mongodb·性能优化·数据库开发·数据库架构·金仓数据库
范纹杉想快点毕业2 小时前
单片机开发中的队列数据结构详解,队列数据结构在单片机软件开发中的应用详解,C语言
c语言·数据库·stm32·单片机·嵌入式硬件·mongodb·fpga开发
William_cl3 小时前
【连载2】 MySQL 事务原理详解
数据库·mysql
java水泥工4 小时前
师生健康信息管理系统|基于SpringBoot和Vue的师生健康信息管理系统(源码+数据库+文档)
数据库·vue.js·spring boot
chirrupy_hamal4 小时前
PostgreSQL WAL 日志发展史 - pg7
数据库·postgresql
五颜六色的池5 小时前
my sql 常用函数及语句的执行顺序
数据库·sql
Gold Steps.5 小时前
从 “T+1” 到 “秒级”:MySQL+Flink+Doris 构建实时数据分析全链路
大数据·数据库·数据分析
花北城5 小时前
【MySQL】Oracle与MySQL,跨库数据转储
数据库·mysql·oracle
一條狗5 小时前
学习日报 20250929|数据库与缓存一致性策略的选择
redis·mysql·kafka