在Oracle中生成随机数
在我的一个项目中,我必须生成一个从1到2000的随机数,并将它们存储到表中。我必须在表中存储2000个值。我必须在表中存储不同的值。在Oracle中生成随机数,oracle,random,plsql,oracle11g,Oracle,Random,Plsql,Oracle11g,在我的一个项目中,我必须生成一个从1到2000的随机数,并将它们存储到表中。我必须在表中存储2000个值。我必须在表中存储不同的值。 如何在oracle中执行此操作。我使用的是oracle 11g。如果必须在1和2000之间存储2000个唯一的随机整数,可以使用以下代码: declare i pls_integer; begin for i in 1..2000 loop insert into my_table (my_column) values (i); end loop; end;
如何在oracle中执行此操作。我使用的是oracle 11g。如果必须在1和2000之间存储2000个唯一的随机整数,可以使用以下代码:
declare
i pls_integer;
begin
for i in 1..2000 loop
insert into my_table (my_column) values (i);
end loop;
end;
/
(在1和2000之间只有一组2000个唯一整数,即从1到2000的每个数字的集合。)
如果要生成随机数,我建议使用DBMS_CRYPTO.RANDOMINTEGER
要插入介于1和2000之间的随机数(允许重复),请将上面的插入内容与以下内容交换:
insert into my_table (my_column) values (MOD(DBMS_CRYPTO.RANDOMINTEGER, 2000) + 1);
在早期版本(Oracle 10和早期版本)中,使用DBMS_随机软件包。+1表示i-In-1。。2000循环,2000个随机值在1和2000之间不唯一。LoL+1原因相同。这应该是你的完整答案(: