[MYSQL] 函数

本文介绍了SQL中的批处理概念,强调了其在代码重用和效率提升方面的作用。详细阐述了如何创建、调用和删除SQL函数,包括无参数和带参数的函数示例。同时,对比了函数与存储过程的区别,指出函数适合处理数据后返回单一结果,而存储过程适用于批量操作。
摘要由CSDN通过智能技术生成

含义:一组预先编译好的SQL语句的集合,理解成批处理语句
1、提高代码的重用性
2、简化操作
3、减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率

 

一、创建

create function 函数名(参数名 参数类型) returns  返回类型
begin
    函数体
end

注意:

函数体中肯定需要有return语句
② 函数体中仅有一句话,则可以省略begin end
③ 使用 delimiter语句设置结束标记

二、调用

select 函数名(实参列表);

1.无参有返回
例:返回employees表中公司的员工个数

--创建函数
CREATE FUNCTION myf1() RETURNS INT
BEGIN
    DECLARE c INT DEFAULT 0;--定义局部变量
    SELECT COUNT(*) INTO c  --赋值
    FROM employees;
    RETURN c;
END $

--调用
SELECT myf1()$

2.有参有返回

例:创建函数,实现传入两个float,返回二者之和

--创建函数
CREATE FUNCTION test_fun1(num1 FLOAT,num2 FLOAT) RETURNS FLOAT
BEGIN
    DECLARE SUM FLOAT DEFAULT 0;
    SET SUM=num1+num2;
    RETURN SUM;
END $

--调用
SELECT test_fun1(1,2)$

三、查看

show create function 函数名;

四、删除

drop function 函数名;

函数与存储过程的区别:

存储过程:可以有0个返回,也可以有多个返回,适合做批量插入、批量更新
函数:有且仅有1 个返回,适合做处理数据后返回一个结果

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值