MySQL常见函数,你都用过哪些呢 ?

云游道人 2025-02-02 745 阅读 0评论

在 MySQL 中,常见的函数广泛应用于查询操作中,能够帮助我们处理字符串、日期、数学运算、数据类型转换等。以下是 30 个常见的 MySQL 函数及其使用示例:

1. CONCAT() - 连接多个字符串

将多个字符串连接成一个字符串。

SELECT CONCAT('Hello', ' ', 'World') AS result;
-- 输出: Hello World

2. SUBSTRING() - 提取子字符串

提取字符串的一部分。

SELECT SUBSTRING('Hello World', 1, 5) AS result;
-- 输出: Hello

3. LENGTH() - 返回字符串的长度

返回字符串的字符数(字节数)。

SELECT LENGTH('Hello World') AS result;
-- 输出: 11

4. UPPER() - 转换为大写

将字符串中的字母转换为大写字母。

SELECT UPPER('hello world') AS result;
-- 输出: HELLO WORLD

5. LOWER() - 转换为小写

将字符串中的字母转换为小写字母。

SELECT LOWER('HELLO WORLD') AS result;
-- 输出: hello world

6. TRIM() - 删除字符串两端的空格

去除字符串两端的空格。

SELECT TRIM('  hello  ') AS result;
-- 输出: hello

7. REPLACE() - 替换字符串中的部分内容

替换字符串中的某些字符或子字符串。

SELECT REPLACE('Hello World', 'World', 'MySQL') AS result;
-- 输出: Hello MySQL

8. INSTR() - 查找子字符串的位置

返回子字符串在字符串中的首次出现位置。

SELECT INSTR('Hello World', 'World') AS result;
-- 输出: 7

9. CONCAT_WS() - 连接字符串并指定分隔符

使用指定分隔符连接多个字符串。

SELECT CONCAT_WS('-', '2024', '11', '18') AS result;
-- 输出: 2024-11-18

10. NOW() - 获取当前日期和时间

返回当前的日期和时间。

SELECT NOW() AS result;
-- 输出: 2024-11-18 14:30:00

11. CURDATE() - 获取当前日期

返回当前日期,不包括时间。

SELECT CURDATE() AS result;
-- 输出: 2024-11-18

12. CURTIME() - 获取当前时间

返回当前时间,不包括日期。

SELECT CURTIME() AS result;
-- 输出: 14:30:00

13. DATE_FORMAT() - 格式化日期

将日期转换为指定格式。

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s') AS result;
-- 输出: 2024-11-18 14:30:00

14. DATE_ADD() - 日期加上指定时间

将指定时间加到日期上。

SELECT DATE_ADD('2024-11-18', INTERVAL 1 DAY) AS result;
-- 输出: 2024-11-19

15. DATE_SUB() - 日期减去指定时间

将指定时间从日期中减去。

SELECT DATE_SUB('2024-11-18', INTERVAL 1 DAY) AS result;
-- 输出: 2024-11-17

16. YEAR() - 获取年份

从日期中提取年份。

SELECT YEAR('2024-11-18') AS result;
-- 输出: 2024

17. MONTH() - 获取月份

从日期中提取月份。

SELECT MONTH('2024-11-18') AS result;
-- 输出: 11

18. DAY() - 获取日期中的天

从日期中提取天。

SELECT DAY('2024-11-18') AS result;
-- 输出: 18

19. NOW() - INTERVAL - 获取过去的日期

返回过去某个时间点的日期。

SELECT NOW() - INTERVAL 10 DAY AS result;
-- 输出: 2024-11-08

20. ABS() - 获取绝对值

返回数字的绝对值。

SELECT ABS(-123) AS result;
-- 输出: 123

21. ROUND() - 四舍五入

将数字四舍五入到指定的小数位。

SELECT ROUND(123.4567, 2) AS result;
-- 输出: 123.46

22. CEIL() - 向上取整

将数字向上取整到最接近的整数。

SELECT CEIL(123.45) AS result;
-- 输出: 124

23. FLOOR() - 向下取整

将数字向下取整到最接近的整数。

SELECT FLOOR(123.45) AS result;
-- 输出: 123

24. RAND() - 生成随机数

生成一个 0 到 1 之间的随机数。

SELECT RAND() AS result;
-- 输出: 0.123456789

25. COUNT() - 统计行数

返回满足条件的行数。

SELECT COUNT(*) FROM employees WHERE age > 30;
-- 输出: 150

26. SUM() - 求和

返回列中所有值的总和。

SELECT SUM(salary) FROM employees WHERE department = 'HR';
-- 输出: 150000

27. AVG() - 计算平均值

返回列的平均值。

 SELECT AVG(salary) FROM employees WHERE department = 'IT';
-- 输出: 5500

28. MAX() - 获取最大值

返回列中的最大值。

SELECT MAX(salary) FROM employees;
-- 输出: 20000

29. MIN() - 获取最小值

返回列中的最小值

SELECT MIN(salary) FROM employees;
-- 输出: 3000

30. IFNULL() - 处理 NULL 值

如果字段值为 NULL,则返回指定的默认值。

SELECT IFNULL(salary, 0) FROM employees;
-- 如果 salary 为 NULL,返回 0

最后总结一下

这些函数在 SQL 查询中非常常用,能够帮助我们处理字符串、日期、数字和数据的聚合操作。

掌握这些基本的 MySQL 函数,能使得你在数据处理、报告生成和性能优化等方面更加高效。

喜欢就支持以下吧
点赞 0

发表评论

快捷回复: 表情:
aoman baiyan bishi bizui cahan ciya dabing daku deyi doge fadai fanu fendou ganga guzhang haixiu hanxiao zuohengheng zhuakuang zhouma zhemo zhayanjian zaijian yun youhengheng yiwen yinxian xu xieyanxiao xiaoku xiaojiujie xia wunai wozuimei weixiao weiqu tuosai tu touxiao tiaopi shui se saorao qiudale qinqin qiaoda piezui penxue nanguo liulei liuhan lenghan leiben kun kuaikule ku koubi kelian keai jingya jingxi jingkong jie huaixiao haqian aini OK qiang quantou shengli woshou gouyin baoquan aixin bangbangtang xiaoyanger xigua hexie pijiu lanqiu juhua hecai haobang caidao baojin chi dan kulou shuai shouqiang yangtuo youling
提交
评论列表 (有 0 条评论, 745人围观)

最近发表

热门文章

最新留言

热门推荐

标签列表