随机姓名生成方法
转自:http://www.maomao365.com/?p=10025
摘要:
下文使用sql脚本生成中文名字的方法分享,如下所示:
实验环境:sql server 2008 R2
在工作中,我们有时需要批量生成随机姓名,下面将讲述使用sql脚本生成随机"名字"的方法分享,如下所示:
实现思路:
1.定义一个姓氏库
2.定义一个名字库
3.使用rand选择随机行,然后组合成一个新的名字
DECLARE @maomao_Xing TABLE(keyId INT IDENTITY(1,1) PRIMARY KEY, NAME NVARCHAR(20)) -- 姓氏DECLARE @maomao_Ming TABLE(keyId INT IDENTITY(1,1) PRIMARY KEY, NAME NVARCHAR(20)) -- 名字INSERT @maomao_Xing VALUES('赵'),('钱'),('孙'),('李'),('西'),('吴'),('郑'),('王'),('冯'),('陈'),('楮'),('卫'),('蒋'),('沈'),('韩'),('杨'),('朱'),('秦'),('尤'),('许'),('何'),('吕'),('施'),('张'),('孔'),('曹'),('严'),('华'),('金'),('魏'),('陶'),('姜'),('戚'),('谢'),('邹'),('喻'),('柏'),('水'),('窦'),('章'),('云'),('苏'),('潘'),('葛'),('奚'),('范'),('彭'),('郎'),('鲁'),('韦'),('昌'),('马'),('苗'),('凤'),('花'),('方'),('俞'),('任'),('袁'),('柳'),('酆'),('鲍'),('史'),('唐'),('费'),('廉'),('岑'),('薛'),('雷'),('贺'),('倪'),('汤'),('滕'),('殷'),('罗'),('毕'),('郝'),('邬'),('安'),('常'),('乐'),('于'),('时'),('傅'),('皮'),('卞'),('齐'),('康'),('伍'),('余'),('元'),('卜'),('顾'),('孟'),('平'),('黄'),('和'),('穆'),('萧'),('尹'),('赖')INSERT @maomao_Ming VALUES ('爱'),('安'),('百'),('邦'),('宝'),('保'),('抱'),('贝'),('倍'),('蓓'),('本'),('必'),('碧'),('璧'),('斌'),('冰'),('兵'),('炳'),('步'),('彩'),('曹'),('昌'),('长'),('常'),('超'),('朝'),('陈'),('晨'),('成'),('呈'),('承'),('诚'),('崇'),('楚'),('传'),('春'),('纯'),('翠'),('村'),('殿'),('丁'),('定'),('东'),('冬'),('二'),('凡'),('方'),('芳'),('昉'),('飞'),('菲'),('纷'),('芬'),('奋'),('风'),('峰'),('锋'),('凤'),('芙'),('福'),('付'),('复'),('富'),('改'),('刚'),('高'),('阁'),('铬'),('根'),('庚'),('耕'),('公'),('功'),('冠'),('光'),('广'),('归'),('桂'),('国'),('海'),('寒'),('翰'),('昊'),('浩'),('荷'),('红'),('宏'),('洪'),('鸿'),('厚'),('华'),('存'),('大'),('丹'),('道'),('德'),('登'),('砥'),('典'),('佃'),('小'),('狗'),('亲')-- 随机生成1000个姓名declare @t table(name nvarchar(3))declare @i int set @i=0while @i <1000begininsert into @t (name) SELECT RTRIM((SELECT NAME FROM @maomao_Xing WHERE keyId = Round(Rand()*(100-1)+1,0)))+RTRIM(LTRIM((SELECT NAME FROM @maomao_Ming WHERE keyId = Round(Rand()*(100-1)+1,0))))+RTRIM(LTRIM((SELECT NAME FROM @maomao_Ming WHERE keyId = Round(Rand()*(100-1)+1,0)))) AS [随机姓名]set @i =@i+1 endselect * from @t as t
赞 (0)