sql2005 生成定长随机数的过程
来源:互联网 发布:外国人怎么在淘宝 编辑:程序博客网 时间:2024/05/16 04:26
IF OBJECT_ID ('RandomStr','P') IS NOT NULL
DROP proc RandomStr
go
create proc RandomStr
@RandomStr varchar(6) output
as
BEGIN
declare @s varchar(60)
declare @r varchar(6)
declare @pos int
declare @len int
set @s = '0123456789'
set @len = len(@s);
set @r = ''
while len(@r) < 6
begin
set @pos = cast(rand()*100 as int);
while @pos > @len or @pos <1
begin
if(@pos < 1)
set @pos = cast(rand()*100 as int);
else
set @pos = cast(@pos /2 as int);
end
set @r = @r + substring(@s, @pos, 1)
end
set @RandomStr = @r
END
纯数据的话,以下方式更简单(生成9位以下)
create proc randnum
@len bigint ,--需要的长度
@seed int, --需要的种子
@rand int output--需要的结果
as
begin
declare @rval int
set @len=power(10,@len);
set @rval = rand(@seed)*@len;
while(@rval<(@len)/10)
begin
set @seed=@seed+1;
set @rval = rand(@seed)*@len;
end
set @rand=@rval;
end
--测试
declare @t int,@seed int
set @seed= datepart(ms,getdate());
exec randnum 9,@seed,@t output
print @t
DROP proc RandomStr
go
create proc RandomStr
@RandomStr varchar(6) output
as
BEGIN
declare @s varchar(60)
declare @r varchar(6)
declare @pos int
declare @len int
set @s = '0123456789'
set @len = len(@s);
set @r = ''
while len(@r) < 6
begin
set @pos = cast(rand()*100 as int);
while @pos > @len or @pos <1
begin
if(@pos < 1)
set @pos = cast(rand()*100 as int);
else
set @pos = cast(@pos /2 as int);
end
set @r = @r + substring(@s, @pos, 1)
end
set @RandomStr = @r
END
纯数据的话,以下方式更简单(生成9位以下)
create proc randnum
@len bigint ,--需要的长度
@seed int, --需要的种子
@rand int output--需要的结果
as
begin
declare @rval int
set @len=power(10,@len);
set @rval = rand(@seed)*@len;
while(@rval<(@len)/10)
begin
set @seed=@seed+1;
set @rval = rand(@seed)*@len;
end
set @rand=@rval;
end
--测试
declare @t int,@seed int
set @seed= datepart(ms,getdate());
exec randnum 9,@seed,@t output
print @t
- sql2005 生成定长随机数的过程
- php生成定长的随机数
- 存储过程生成随机数
- Python生成定长格式的字符串
- sql2005的存储过程
- sql2005 通过存储过程生成 Excel
- sql-server2005下生成定长的随机字符串
- 生成随机数的字符串
- 生成真正的随机数!
- java随机数的生成
- 生成唯一的随机数
- 随机数的生成.
- 随机数的生成问题??
- 随机数的生成
- 伪随机数的生成
- 伪随机数的生成
- 随机数的生成
- 十个随机数的生成
- 保护SQL Server 2000的十个步骤
- 标题 标题 标题 标题
- Java学习意见 (来自CSDN 网友wlh86618 )
- Struts使用JavaBean连接数据库
- 如果你28岁还没结婚
- sql2005 生成定长随机数的过程
- Simens S7-200 CN PPI 协议
- 服务器IIS出错:Server Application Error
- 我的BLOG
- Pthread使用手册
- 一种实现一个用户帐户不能同时登录的问题
- C#中的类型转换
- 颜色值
- SQLSERVER2005下配置一个邮件任务