图解MySQL数据库之聚合函数、自定义函数
MySQL数据库中的函数根据功能可以划分为字符函数、数值运算符与函数、比较运算符与函数、日期时间函数、信息函数、加密函数、聚合函数以及自定义函数等。
本篇经验将详细介绍数据库中的,希望对大家的工作和学习有所帮助!
聚合函数
- 01
聚合函数中包括如下图所示函数:
- 02
聚合函数只能用于数据表,不能用于单个数值的计算,如下图所示:
- 03
下面建立一个test数据表用来测试数据,如下图所示:
- 04
AVG():平均值 COUNT():计数 MAX():最大值 MIN():最小值 SUM():求和 如下图所示:
自定义函数
- 01
函数可以返回任意类型的值,同样可以接收这些类型的参数。函数参数和返回值之前没有必然的联系。 [注意]一个函数最多可以有1024个参数。 用户自定义函数(user-defined function,UDF)是一种对MySQL扩展的途径,其用法与内置函数相同。 自定义函数的两个必要条件:1、参数;2、返回值。
- 02
CREATE FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL} routine_body 关于自定义函数的函数体: 1.函数体可以由合法的SQL语句构成; 2.函数体可以是简单的SELECT或INSERT语句; 3.函数体如果为复合结构则使用BEGIN...END语句; 4.复合结构可以包含声明、循环、控制结构。
- 03
CREATE FUNCTION f1() RETURNS VARCHAR(30) RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点:%i分:%s秒'); 如下图所示:
- 04
CREATE FUNCTION f2(num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED) RETURNS FLOAT(10,2) UNSIGNED RETURN (num1+num2)/2; 如下图所示: [注意]如果自定义函数存在符合结构的多个语句,函数体要包含在BEGIN...END内,同时,需要通过DELIMITER将默认的结束符 ; 修改成其他符号,如:// $$ ,以免函数由于语句结尾的 ; 号导致中断。 DROP FUNCTION [IF EXISTS] function_name