隨機姓名生成方法


 轉自: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類型
隨機查詢數據庫表中的一條數據的方法分享


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM