34,589
社区成员
发帖
与我相关
我的任务
分享
if object_id('tb') is not null
drop table tb
create table tb(c1 char(1))
insert tb
select char(number) from master..spt_values where type ='p' and number between 65 and 90
select top 1 a.c1 + b.c1 + c.c1 from tb a , tb b, tb c
order by cast(checksum(newid(), a.c1 + b.c1 + c.c1) & 0x7fffffff as float) / cast (0x7fffffff as int)
select char(65+convert(int,Round(RAND()*100,0))%26)
+char(65+convert(int,Round(RAND()*100,0))%26)
+char(65+convert(int,Round(RAND()*100,0))%26)
CREATE PROCEDURE GenRandomString
@length int,
@string varchar(100) OUTPUT
AS
BEGIN
DECLARE @i int
SET @i = 0
SET @string = ''
WHILE @i < @length AND @i < 100
BEGIN
SET @string = @string + CHAR(0x41 + ABS(CHECKSUM(NEWID())) % 26)
SET @i = @i + 1
END
RETURN 0
END
DECLARE @RandomString varchar(100)
EXEC GenRandomString 5, @RandomString OUTPUT
SELECT @RandomString
EXEC GenRandomString 10, @RandomString OUTPUT
SELECT @RandomString
Select Char(Round(RAND()*25,0)+65)+Char(Round(RAND()*25,0)+65)+Char(Round(RAND()*25,0)+65)
/*
----
UEY
(所影响的行数为 1 行)
*/
SELECT CHAR(65+FLOOR(RAND()*26))
+CHAR( 65+FLOOR(RAND()*26))
+CHAR( 65+FLOOR(RAND()*26))
select char(rand(checksum(newid()))*26+65)
+ char(rand(checksum(newid()))*26+65)
+ char(rand(checksum(newid()))*26+65)
declare @sql nvarchar(400)
select @sql= 'select char( '+cONVERT(NVARCHAR,CONVERT(INT,26*rand())+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ') '
print @sql
EXEC(@sql)
RAND()
Char(65+N)