轉自:http://www.maomao365.com/?p=10025 摘要: 下文使用sql腳本生成中文名字的方法分享,如下所示: 實驗環境:sql server 2008 R2 在工作中,我們有時需要批量生成隨機姓名,下麵將講述使用sql腳本生成隨機"名字"的方法分享,如下所示:實現思路: 1 ...
轉自: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=0 while @i <1000 begin insert 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 end select * from @t as t
相關閱讀:
RAND 數學函數將返回 0~1的一個float類型
隨機查詢資料庫表中的一條數據的方法分享