sql随机数
⑴ 如何在sql里生成随机数
从 RAND 生成随机数的常用方法是,用相对可变的某个值作为种子值,例如将 GETDATE 的几个部分累加:
SELECT RAND( (DATEPART(mm, GETDATE()) * 100000 )
+ (DATEPART(ss, GETDATE()) * 1000 )
+ DATEPART(ms, GETDATE()) )
⑵ SQL语句随机产生随机数
产生随机数:right(rand(),4)
rand()返回一大串带小数点的数字,用right()截取后面的四位是不是变成了整数
⑶ SQL随机数字。。
1. cast(1000+ rand(id)*2000 as int) 生成1000-3000之间的任意数
2. 如果你的表中已经存在数值型的数,比方说ID,可以通过它作为种子生成随机数,这样就不会是一样的
update bspayc set jjgz= cast(1000+ rand(id*1000)*2000 as int) where YYYYMM='2011-07'
当然,也可以通过游标逐行修改。
⑷ sql随机数
select DBMS_RANDOM.VALUE/10+0.1 from al connect by level <=10
--DBMS_RANDOM.VALUE/10+0.1 保证值在0.1到0.2之间
--10规定生成的个数
⑸ SQL生成随机数
oracle的可以这样取
select trunc(dbms_random.value(1,199)) from al;
⑹ 使用SQL语句取随机数的方法
SQL随机查询语句,[数据库使用技巧]SQL语句生成随机数,如何随机显示sql查询语句查询的数据记录集中的20条,随机取出若干条记录的SQL语句,使用SQL语句取随机数的方法
方法如下:
SQL
Server:
Select
TOP
N
*
From
TABLE
order
By
NewID()
Access:
dim
r
randomize
r
=
rnd
sql
=
"select
top
10
*
from
table
order
by
rnd("
&
r
&
"-id)"
rnd("
&
r
&
"-id)
其中的id是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(UserName)
select
top
10
*
from
table
order
by
rnd("
&
r
&
"-Len(UserName))
MySql:
Select
*
From
TABLE
order
By
Rand()
Limit
10
orACLE:
select
*from
(select
*from
t
order
by
dbms_random.value)
where
rownum<10
⑺ sql 随机数
select cast(rand() * 30 as int),cast(rand() * 30 as int),cast(rand() * 30 as int),cast(rand() * 30 as int),
cast(rand() * 30 as int),cast(rand() * 30 as int),cast(rand() * 30 as int)
考虑到你可能需要不重复的,用如下方法比较好
declare @tb table(val int)
declare @i int
set @i = 1
while @i <= 30
begin
insert into @tb(val) values(@i)
set @i = @i + 1
end
select top 7 * from @tb order by newid()
⑻ sql中的随机函数怎么用
sql server的rand()函数:返回0到1之间的随机浮点值
round()函数:返回数值表达式,舍入到指定长度或精度。
例如随机取得0~99之间的数: round(rand()*100,0)
随机取得100~199之间的数:round(rand()*100+100,0)
⑼ 关于SQL如何取随机数问题
Oracle的随机数产生函数(DBMS_RANDOM )
2007-10-17 17:12
Oracle8 8.0版介绍了DBMS_RANDOM包,Oracle8i 8.1.6版介绍了DBMS_RANDOM包的新功能,但Oracle8i 文档中没有详细全面介绍其功能。幸运的是:有一个新的DBMS_RANDOM包函数能够返回0-1之间的随机数。这个新函数是:
◆ FUNCTION value RETURN NUMBER;
◆ FUNCTION value (low IN NUMBER, high IN NUMBER) RETURN NUMBER;
◆ FUNCTION normal RETURN NUMBER;
◆ FUNCTION string (opt char, len NUMBER) RETURN VARCHAR2;
VALUE函数的第一种形式返回一个大于或等于0且小于1的随机数;第二种形式返回一个大于或等于LOW,小于HIGH的随机数。下面是其用法的一个示例:
SQL> select dbms_random.value, dbms_random.value(55,100) from al;
VALUE DBMS_RANDOM.VALUE(55,100)
--------------- -----------------------------
.782821936 79.6367038
NORMAL函数返回服从正态分布的一组数。此正态分布标准偏差为1,期望值为0。这个函数返回的数值中有68%是介于-1与+1之间,95%介于-2与+2之间,99%介于-3与+3之间。事实上,这就是你在清单1中所看到的。
最后,是STRING函数。它返回一个长度达60个字符的随机字符串。参数OPT可以是清单2显示的值中的任何一个单个字符。
关于这些函数及DBMS_RANDOM包的文件都包含在SQLPlus中:
select text from all_source
where name = 'DBMS_RANDOM'
and type = 'PACKAGE' order by line;
⑽ SQL 随机数问题
create table bb(
b varchar(100),
a varchar(100) default '1010 3576 '+cast(cast(rand() * 9 as int) as varchar)+cast(cast(rand() * 9 as int) as varchar)+cast(cast(rand() * 9 as int) as varchar)+cast(cast(rand() * 9 as int) as varchar)+' '++cast(cast(rand() * 9 as int) as varchar)+cast(cast(rand() * 9 as int) as varchar)+cast(cast(rand() * 9 as int) as varchar)+cast(cast(rand() * 9 as int) as varchar)
check(a like '1010 3576 [0-9][0-9][0-9][0-9] [0-9][0-9][0-9][0-9]')
)