mysql-自定义函数

╰半橙微兮° 2022-12-10 10:17 346阅读 0赞

自定义函数

mysql内置函数,例如min() max() avg() count() abs() now() date()

为了满足开发中的需要,可以自定义函数,来完成某种特定的功能

语法:

自定义不带参数的函数

  1. #自定义结束符
  2. DELIMITER //
  3. # 定义函数
  4. CREATE FUNCTION 自定义函数名()
  5. //返回值类型 这里必须写mysql的数据类型
  6. RETURNS VARCHAR(30)
  7. BEGIN # 开始标志
  8. # 函数体
  9. RETURN CONCAT('li','si');
  10. END
  11. //

注:默认情况下分号表示结束,为了能够在begin和end之间写多条语句,每个语句都有分号,这时可以自定义结束符,如果是单条语句可以省略 begin和end

自定义带参数的函数

  1. #自定义结束符
  2. DELIMITER //
  3. # 定义函数
  4. CREATE FUNCTION 自定义函数名(形参名称1 形参类型,形参名称2 形参类型)
  5. //返回值类型 这里必须写mysql的数据类型
  6. RETURNS VARCHAR(30)
  7. BEGIN # 开始标志
  8. # 函数体
  9. RETURN 形参1+形参2;
  10. END
  11. //

实例

  1. # 带参数的自定义函数
  2. DELIMITER //
  3. CREATE FUNCTION a3(a INT,b INT)
  4. RETURNS INT
  5. BEGIN
  6. RETURN a+b;
  7. END
  8. //
  9. # 调用
  10. SELECT a3(1,2);

给变量赋值

  1. #表达式结果赋值
  2. DELIMITER //
  3. CREATE FUNCTION tux_num(a INT,b INT)
  4. RETURNS INT
  5. BEGIN
  6. DECLARE c INT;
  7. SELECT a*b INTO c;
  8. RETURN c;
  9. END
  10. //
  11. #调用
  12. SELECT tux_num(3,4);
  13. # 查询其他数据库赋值
  14. DELIMITER //
  15. CREATE FUNCTION count_num()
  16. RETURNS INT
  17. BEGIN
  18. DECLARE c INT;
  19. SELECT COUNT(*) INTO c FROM employee;
  20. RETURN c;
  21. END
  22. //
  23. #调用
  24. SELECT count_num();

删除自定义函数

语法:

  1. DROP FUNCTION 自定义函数名;

实例:

  1. DROP FUNCTION a2;

查看创建自定义函数的语句

  1. SHOW CREATE FUNCTION a3;

#

发表评论

表情:
评论列表 (有 0 条评论,346人围观)

还没有评论,来说两句吧...

相关阅读

    相关 mysql定义函数

    1. 函数简介 mysql 5.0开始支持函数,函数是存在数据库中的一段sql集合,调用函数可以减少很多工作量, 减少数据在数据库和应用服务器上的传输,对于提高

    相关 MySQL 定义函数

    在使用 MySQL 的过程中,MySQL 自带的函数可能完成不了我们的业务需求,这时候就需要自定义函数。 自定义函数是一种与存储过程十分相似的过程式数据库对象。它与存储过程一

    相关 MySQL定义函数

    > mysql中有许多计算函数,比如聚合函数SUM()、AVG()以及日期时间函数等等,我们可以直接使用;这里我们自定义函数主要用来封装计算,避免重复编写与语句美观。

    相关 MySQL定义函数

    函数 含义和存储过程基本一致 函数和存储过程的区别 1. 一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。存储过程