--1、借助newid()
go
--创建视图(因为在函数中无法直接使用newid())
create view vnewid
as
select newid() N'MacoId';
go
--创建函数
create function getrandstr(@n int)
returns varchar(max)
as
begin  declare @i int  set @i=ceiling(@n/32.00)  declare @j int  set @j=0  declare @k varchar(max)  set @k=''  while @j<@i  begin  select @k=@k+replace(cast(MacoId as varchar(36)),'-','') from vnewid  set @j=@j+1  end  set @k=substring(@k,1,@n)
return @k
end  --测试示例
select dbo.getrandstr(75)
--运行结果
/*
D185504AD09C4D5796F7016983E67414CEE25162EA9F43D195D43328A4CF01AC7C586521D8E
*/  --我们可以发现结果中的字母都是大写的,或是都是小写的。
--换种方法来写下:
go
--创建函数
create function [dbo].[m_rand](@mycount int)
returns nvarchar(2000)
as
begin  declare @maco_wang table (id varchar(1))  declare @maco_number int,@number int;  declare @my_one nvarchar(max),@my_two nvarchar(max)  set @my_one='';set @maco_number=0; set @number =48;  while (@number>=48 and @number<=57) or (@number>=65 and @number<=90) or (@number>=97 and @number<=122)   begin  insert into @maco_wang select char(@number)  set @number=@number+1;  if(@number=58)  begin  set @number=65            end  if(@number=91)  begin       set @number=97     end  end  while @maco_number<@mycount  begin  select @my_two=id from @maco_wang  order by (select MacoId from dbo.m_macoview);  set @my_one=@my_two+@my_one;  set @maco_number=@maco_number+1;  end  return @my_one
end
--测试用例
select [dbo].[m_rand](75)
--运行结果
/*
5nN0w4o4VOkjacB5so2uvCuw2ZRrnBhxEi4IcsEOHzBbStKmR1p8ASH4N4XaxhDoDEtkX8bZ0CR
*/

SQL生成n位随机字符串相关推荐

  1. bash 生成N位随机字符串

    seq 产生一个数到另一个数的所有整数 $seq 2 10 2 3 4 5 6 7 8 9 10 $seq 10 1 2 3 4 5 6 7 8 9 10 $RANDOM 随机数 ${varibale ...

  2. Python:生成6位随机字符串,字符可以是数字、大写字母、小写字母

    #!/usr/bin/env python # coding:UTF-8""" @version: python3.x @author:曹新健 @contact: 617 ...

  3. js生成8位随机字符串密码

    最近做了一个功能,随机生成一个8位字符串密码: 要求必须包含大写字母.小写字母和数字,下面和大家分享下 首先我们要了解下 ASCLL码 js提供两个方法: 分别将ASCLL码转为字符:String.f ...

  4. 生成16位随机字符串的方法

    function getNonce(){$str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';$noncest ...

  5. java生成随机6个数字和字母_java_Java生成含字母和数字的6位随机字符串,本文实例为大家分享了Java生成 - phpStudy...

    Java生成含字母和数字的6位随机字符串 本文实例为大家分享了Java生成6位随机字符串的实现代码,具体内容如下 package com.amos.tools; import java.util.Ar ...

  6. java随机产生字母排序_Java生成含字母和数字的6位随机字符串

    本文实例为大家分享了Java生成6位随机字符串的实现代码,具体内容如下 package com.amos.tools; import java.util.ArrayList; import java. ...

  7. java生成6随机数字和字母_Java生成含字母和数字的6位随机字符串

    本文实例为大家分享了Java生成6位随机字符串的实现代码,具体内容如下 package com.amos.tools; import java.util.ArrayList; import java. ...

  8. Linux Shell 生成随机数和随机字符串

    日常生活中,会经常用到随机数,使用场景非常广泛,例如买彩票.丢骰子.抽签.年会抽奖等. Shell 下如何生成随机数呢,米扑博客特意写了本文,总结 Linux Shell 产生随机数的多种方法. 本文 ...

  9. java实现生成指定位数随机字符串要求包含数字大小写字母三种类型字符

    今天接到一个初始密码生成的需求,要求生成的密码长度在8-16位,其中必须包含数字.大写字母.小写字母.平常都是使用hutool工具类进行字符处理,发现没有提供满足要求的方法,自己就根据现有的方法组装实 ...

最新文章

  1. 做技术到底可以做到哪种地步-技术为什么越走越窄 (转)
  2. 独家 | 带你认识机器学习的的本质(附资料)
  3. 工业用微型计算机(18)-指令系统(13)
  4. html设置按钮样式变为椭圆,css border-radius圆形变为椭圆形,位置:绝对
  5. H5-geolocation学习
  6. 深入理解es module
  7. linkedhashmap遍历_Java集合:浅谈LinkedHashMap、LinkedHashSet源码及LRU算法实现
  8. 递推公式与递归退出的条件
  9. 23.3. DELETE
  10. VS注释和取消注释快捷键自定义
  11. mysql体系结构内存_mysql 内存体系结构--session
  12. SURF特征提取(使用matlab自带函数)
  13. Origin软件绘制柱形图
  14. 又一场“人机大战”?来自AI open无情碾压!
  15. arcGis for js 3D marker
  16. SEM1 PSYCHOLOGY LEC2
  17. TT 的旅行日记 Week7作业B题
  18. golang mysql 崩溃_使用GoLang与mysql连接失败
  19. Texture2D变Sprite
  20. 盛天海电商:拼多多活动怎么去定位?

热门文章

  1. EDA与VHDL作业(1)
  2. 【转载】【缺陷预防技术】自动错误预防(AEP)
  3. 《开会就要学三星》阅读笔记
  4. 计算机不能识别监控硬盘分区,win7系统无法识别硬盘分区的详细教程
  5. 相机存储卡出现错误数据,照片还能恢复吗?
  6. 学习C#必备的编程软件——pow_na的博客
  7. html5--canvas--众神眷恋的幻想乡(STG)
  8. 惠普新CEO象征性年薪仅1美元 有望获大量股权
  9. 苏州园林的盆景也是甲天下啊
  10. 用云服务器搭建我的世界个人服务器