mysql---自定义函数

自定义函数
    除了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);

注意:

声明变量用declare,给变量赋值用set

常用循环:

    while循环:

    

while i < 10
   ...执行需要循环的步骤
end while;

####一定要注意end while后加;

   repeat循环:

   

repeat
    ....需要循环的语句
    until i > 10
end repeat;


####注意
until后不要加;
发布了76 篇原创文章 · 获赞 21 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/shen_chengfeng/article/details/103844010
今日推荐