SQL语言随机生成字符串的几种方法

 时间:2024-10-18 02:31:22

在程序开发过程,有时候需要在数据层面做一些业务的处理,这里给大家讲解一下使用SQL语言随机生成字符串的4种方法。

SQL语言随机生成字符串的几种方法

工具/原料

数据库服务器,如:mysql、sqlserver、oracle等

SQL编辑器

方法/步骤

1、1.利用newid()产生的uniqueidentifier都是随机且唯一的;示例:declare@stringnvarchar(100);set@string=cast(newid()asnvarchar(100));select@string;go

2、2.利用rand()生成随机数字串;示例:declare@stringnvarchar(100);set@string=right(str(rand(),8,6),2);select@string;go

3、3.利用筠续师诈rand()生成6位随机字符串;示例:declare@sqlnvarchar(400)select@sql=&垆杪屑丝#39;selectchar('+cONVERT(NVARCHAR,CONVERT(INT,26*rand())+97)+')+CHAR('+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+')+CHAR('+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+')+CHAR('+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+')+CHAR('+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+')+CHAR('+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+')'print@sqlEXEC(@sql)goDECLARE@BelowintDECLARE@UpintSELECT@Below=65,@Up=90SELECTCHAR(CAST(RAND()*(@Up-@Below)+@BelowASdecimal(38,0)))+CHAR(CAST(RAND()*(@Up-@Below)+@BelowASdecimal(38,0)))+CHAR(CAST(RAND()*(@Up-@Below)+@BelowASdecimal(38,0)))+CHAR(CAST(RAND()*(@Up-@Below)+@BelowASdecimal(38,0)))+CHAR(CAST(RAND()*(@Up-@Below)+@BelowASdecimal(38,0)))+CHAR(CAST(RAND()*(@Up-@Below)+@BelowASdecimal(38,0)))goSELECTCHAR(CONVERT(INT,rand()*26)+(CASEWHENRAND()*2>1THEN97ELSE65END))+CHAR(CONVERT(INT,rand()*26)+(CASEWHENRAND()*2>1THEN97ELSE65END))+CHAR(CONVERT(INT,rand()*26)+(CASEWHENRAND()*2>1THEN97ELSE65END))+CHAR(CONVERT(INT,rand()*26)+(CASEWHENRAND()*2>1THEN97ELSE65END))+CHAR(CONVERT(INT,rand()*26)+(CASEWHENRAND()*2>1THEN97ELSE65END))+CHAR(CONVERT(INT,rand()*26)+(CASEWHENRAND()*2>1THEN97ELSE65END))go

SQL语言随机生成字符串的几种方法

4、4.编写可艮劁飨戽以产生随机字符串的存储过程;示例:--*********************CREATEVIEWV_RANDASSELECTRAND1租涫疼迟=CONVERT(INT,RAND()*26),RAND2=RAND()*2GOCREATEFUNCTIONDBO.f_GetRandNum(@LENINT,@FLAGINT)RETURNSNVARCHAR(100)AS--@LEN输出字符的长度--@FLAG返回值包含字符1:大写字母2:小写字母3:大小写字母混合BEGINDECLARE@SQLNVARCHAR(100),@RANDINTSELECT@SQL=''IF@LEN>100SET@LEN=100WHILE@LEN>0BEGINSELECT@RAND=RAND1+(CASE@FLAGWHEN1THEN65WHEN2THEN97ELSE(CASEWHENRAND2>1THEN97ELSE65END)END)FROMV_RANDSELECT@SQL=@SQL+CHAR(@RAND),@LEN=@LEN-1ENDRETURN@SQLENDGO--调用存储过程SELECTDBO.f_GetRandNum(7,2)

GitHub怎么使用 Visual Studio Code怎样安装扩展插件 怎么用visualstudio html文件怎么打开 如何运行后缀名为py的文件
热门搜索
古堡图片 超人的图片 麻疹的症状图片 芭比娃娃玩具图片 情人电影