备战2022春招或暑期实习,本专栏会持续输出MySQL系列文章,祝大家每天进步亿点点!文末私信作者,我们一起去大厂。
本篇总结的是 《MySQL之函数》,后续会每日更新~
关于《Redis入门到精通》、《并发编程》、《Java全面入门》、《鸿蒙开发》等知识点可以参考我的往期博客
相信自己,越活越坚强,活着就该逢山开路,遇水架桥!生活,你给我压力,我还你奇迹!目录
1、简介
2、正文
2.1 文本处理函数
2.2 日期处理函数
2.3 数值处理函数
2.4 聚集函数
1、简介
MySQL内置了很多函数用于各种场景数据处理。函数往往能够处理文本数据、日期数据、数值数据以及返回系统相关信息;除普通函数之外MySQL还内置了一些聚集函数,用于对表中数据进行汇总、求和等操作。
聚集函数:
指的是运行在行组上,计算和返回单个值的函数。
使用MySQL的函数有很多好处:
SQL编写简易、美观
计算速度快于客户机
减少数据返回,节省网络带宽资源
不过MySQL函数不一定在其他数据库系统支持(语法不同),因此SQL的移植性比较差。
2、正文
2.1 文本处理函数
文本处理函数能够对文本进行大小写转换、组合、去除空格等操作。
mysql> select avg(price) as avg_price, count(*) as row_size, max(price) as max_price, sum(price) as sum_price from product; +-------------+----------+-----------+-----------+ | avg_price | row_size | max_price | sum_price | +-------------+----------+-----------+-----------+ | 5656.800000 | 5 | 6799.00 | 28284.00 | +-------------+----------+-----------+-----------+
注意:上面有说到count()函数可以统计表的行数,但是如果我们希望统计的是针对某一列去重的行数,此时可以使用distinct关键字,但是它只能作用于指定字段,不能作用于*。
正确用法:
1.mysql> select count(distinct price) from product; +-----------------------+ | count(distinct price) | +-----------------------+ | 5 | +-----------------------+
错误用法:
1.mysql> select count(distinct *) from product; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*) from product' at line 1