mysql---自定义函数

天涯浪子 提交于 2020-01-26 14:51:42

自定义函数
    除了count()等内置函数外,可以创建一个适合自己需求的函数。
    创建函数:
        delimiter //
        
        create function 函数名(参数名 类型) returns 返回值类型
        begin
            内部实现
        end
        
        delimiter ;
    例子:生成指定长度的内容随机的字符串
            第一步:创建函数
               delimiter //
                create function    get_rand_str(length_str int) returns varchar(255)
                begin
                    
                    declare src_str varchar(128) default 'qazxswedcvfrtgbnhyujmkiolpQAZXSWEDCVFRTGBNHYUJMKIOLP';
                    
                    declare rand_char varchar(1) default '';
                    
                    declare i int default 0;
                    
                    declare res_str varchar(255) default '';
                    
                    declare rand_index int default 0;
                    
                    
                        while i < length_str do
                            set rand_index = floor( RAND()*52 + 1);
                            set rand_char = SUBSTR(src_str,rand_index,1);
                            set res_str = concat(res_str,rand_char);
                            set i = i + 1;
                        end while;
                    
                    return res_str;
                    
                end    //            
                delimiter ;    
            第二步:调用函数
                select get_rand_str(100);

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!