mysql自定义函数

自定义函数

创建函数

delimiter //
create function `myfunc`(num1 int,num2 int)
returns varchar(20)
begin
    if num1>num2 then
            return "num1 > num2";
        elseif num1<num2 then
            return "num1 < num2";
        else
            return "num1 = num2";
    end if;
    end//
delimiter ;

查看函数信息

mysql> show create function myfunc\G;
*************************** 1. row ***************************
            Function: myfunc
            sql_mode: STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
     Create Function: CREATE DEFINER=`root`@`%` FUNCTION `myfunc`(num1 int,num2 int) RETURNS varchar(10) CHARSET latin1
begin
    if num1>num2 then
            return "num1 > num2";
        elseif num1<num2 then
            return "num1 < num2";
        else
            return "num1 = num2";
    end if;
    end
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci

mysql> show function status\G;
*************************** 1. row ***************************
                  Db: test
                Name: myfunc
                Type: FUNCTION
             Definer: root@%
            Modified: 2016-10-27 10:19:46
             Created: 2016-10-27 10:19:46
       Security_type: DEFINER
             Comment: 
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci

删除函数

drop function `myfunc`;

标签: mysql

添加新评论