生成0 - 1之间的随机数
select random();
生成一个1 - 10000之间的随机整数
ceil
:得到不小于参数的最小的整数
SELECT ceil(random()*(10000-1)+1) as num;
floor
:得到不大于参数的最大整数
SELECT floor(random()*(10000-1)+1) as num;
trunc
:截断
SELECT trunc(random()*(10000-1)+1) as num;
生成100个1-10000之间的随机整数,可能会有重复数据
SELECT ceil(random()*(10000-1)+1) as num
from generate_series(1,100);
生成100个1000-10000之间的随机整数,可能会有重复数据
SELECT ceil(random()*(10000-1)+1000) as num
from generate_series(1,100);
生成100个1-10000之间的随机整数,没有重复数据
select num
from generate_series(1,1000000) as t(num)
order by random()
limit 10;
生成测试数据的方法,生成50w数据,第一个整数,第二个8位文本
select id,substring(md5(id::varchar),2,8)
from generate_series (1,500000) as t(id)
select id,substring(md5(random()::varchar),2,8)
from generate_series (1,500000) as t(id)