综合实训
--随机生成姓名
DECLARE @Xstr varchar(200)
DECLARE @Mstr varchar(200)
DECLARE @MGstr varchar(200)
DECLARE @XMstr varchar(12)
DECLARE @Xlen int,@Mlen int,@pos1 int ,@pos2 int ,@pos3 int ,@k int;
SET @Xstr='林李谢刘卢金吕陈柏邓杜郭黄赖梁罗麦聂彭叶林容沙施唐韦吴肖许杨曾湛郑钟周朱康关邱汤熊钟张' ;
SET @Mstr='彬晶红芳花权明伟宇敬海振辉文静嘉豪丽玲文佳丽榕海源明伟宇敬海振辉文静嘉豪炜福河豪清健霞倩' ;
SET @Xlen = len(@Xstr) ; --计算Xstr字符串长度
SET @Mlen =len(@Mstr) ; --计算Mstr字符串长度
SET @MGstr='';
SET @k=1;
WHILE @k<=10 --生成10个姓名
BEGIN
SET @pos1= ceiling(1+rand()*@Xlen) ; --随机生成0-@len范围内的数
SET @pos2= ceiling(1+rand()*@Mlen) ; --随机生成0-@len范围内的数
SET @pos3= ceiling(1+rand()*@Mlen) ; --随机生成0-@len范围内的数 --
-- 取字符串Xstr中的@pos位的字,并使用concat函数连接成串
SET @XMstr =substring(@Xstr,@pos1,1)+substring(@Mstr,@pos2,1)+substring(@Mstr,@pos3,1);
print @XMstr --随机生成姓名
SET @MGstr=@MGstr+@XMstr+' , '
set @k=@k+1;
print @MGstr
END

