MySQL8 存储函数是一种存储对象类型,您可以使用存储函数来封装 SQL 代码,与存储过程不同,存储函数返回单个值,可用于 SQL 表达式,您可以在任意 SQL 语句中使用存储函数,这样有助于提高可读性和可维护性。
存储函数和存储过程都是存储对象,都用于定义 SQL 集合,它们非常类似,但有如下使用区别:
首先,我们通过编写一个简单的存储函数,来介绍存储函数的语法。
delimiter // create function try8_func(try8_para int) returns varchar(50) deterministic begin declare try8_result varchar(50); IF try8_para >= 10 then set try8_result = '10'; elseif (try8_para < 10 and try8_para > 5) then set try8_result = '5'; elseif try8_para < 5 then set try8_result = '0'; end if; return (try8_result); end // delimiter ;
存储函数关键字说明:
# 查询运行的状态 show create function try8.try8_func; # 查询系统表定义 select * from information_schema.routines where routine_name='try8_func';
select try8_id, try8.try8_func(10) as result from try8_db;
drop function if exists try8.try8_func;
MySQL8 存储函数不支持修改,官方推荐的实现方式为先删除后重建。
MySQL8教程 - MySQL8 存储函数,介绍 MySQL 和 MySQL8 数据库,从 MySQL8 存储函数概念开始,逐步到 MySQL8 存储函数示例等,通篇实用易懂,让 MySQL8 入门更加快速和简单。
《MySQL8教程》主打原创、全部免费,欢迎学习和转载,如需交流请加微信号:try8_cn。