美文网首页MySQL
28-存储函数

28-存储函数

作者: 紫荆秋雪_文 | 来源:发表于2022-09-01 10:50 被阅读0次

    一、语法分析

    CREATE FUNCTION 函数名(参数名 参数类型,...)
    RETURNS 返回值类型
    [characteristics ...]
    BEGIN
        函数体 #函数体中肯定有RETURN 语句
    END
    
    • 参数列表:指定参数为IN、OUT或INOUT只对PROCEDURE是合法的,FUNCTION中总是默认为IN参数
    • RETURNS type 语句表示函数返回数据的类型
    • characteristic 创建函数时指定的对函数的约束。取值与创建存储过程时相同
    • 函数体也可以用BEGIN…END来表示SQL代码的开始和结束。如果函数体只有一条语句,也可以省略
      BEGIN…END

    二、函数调用

    SELECT 函数名(实参列表)
    

    三、创建函数

    1、创建存储函数,名称为email_by_name(),参数定义为空,该函数查询Abel的email,并返回,数据类型为字符串型

    DELIMITER $
    CREATE FUNCTION email_by_name(name VARCHAR(25))
    RETURNS VARCHAR(25)
    DETERMINISTIC
    CONTAINS SQL
    BEGIN
        RETURN (SELECT email FROM emp WHERE last_name = name);
    END $
    DELIMITER ;
    
    • 调用
    SELECT email_by_name('Ernst');
    

    相关文章

      网友评论

        本文标题:28-存储函数

        本文链接:https://www.haomeiwen.com/subject/gcajnrtx.html