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 |

相关推荐
弈风千秋万古愁39 分钟前
python 语法篇(一)
数据库·python·mysql
道法自然,人法天43 分钟前
时序数据库:InfluxDB命令行操作
数据库·时序数据库
苏琢玉1 小时前
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
mysql·shell
智能编织者1 小时前
深入解析 Python 正则表达式:全面指南与实战示例
python·mysql·正则表达式
課代表1 小时前
VBA 中正则表达式使用指南
数据库·mysql·正则表达式·excel
网硕互联的小客服1 小时前
如何从 MySQL 错误日志中排查数据库故障
数据库
QX_hao1 小时前
sock文件介绍--以mysql.sock为例
数据库·mysql
开发小能手-roy2 小时前
Ubuntu 系统中安装 Nginx
数据库·nginx·ubuntu
罗念笙2 小时前
MySQL的覆盖索引是什么?
mysql
橙子20252 小时前
OLLAMA 未授权访问-漏洞挖掘
数据库·sql