获取随机中文名函数

获取随机中文名函数
函数如下:
 1 create function rand_name() returns varchar(128)
 2 begin
 3     # 随机生成姓名函数
 4     # 初始化十六姓氏的字符串,作为姓氏库
 5     declare family_str varchar(128) default '赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨';
 6 # 初始化32位名字字符串,作为名字库
 7     declare name_str varchar(128) default '平书文若山向秋凡白斌绮烟从蕾天曼润又亦从语绮彤之玉凡梅依琴沛槐敏';
 8 # 记录生成结果
 9     declare full_name varchar(128) default '';
10 # 随机名字一二位标识
11     declare rand_num int default 0;
12 #   随机姓氏
13     set full_name = concat(full_name, substr(family_str, floor(1 + rand() * 16), 1));
14 #   随机名字
15     set full_name = concat(full_name, substr(name_str, floor(1 + rand() * 16), 1));
16 #   名字是否是双字
17     set rand_num = rand() * 10;
18     set full_name = if(rand_num > 5, concat(full_name, substr(name_str, floor(1 + rand() * 16), 1)), full_name);
19 
20     return full_name;
21 end;

 

posted @ 2022-08-04 16:11  左叔  阅读(74)  评论(0编辑  收藏  举报