在mysql中,rand函数用于产生0(包含)到1(不包含)的随机数,
rand有两种形式:
1、rand(),即无参数的,此时产生的随机数是随机的,不可重复的;
2、rand(n),即有参数数,如rand(2),相当于指定随机数生产的种子,那么这种情况产生的随机数是可重复的。
对于第一种情况,大家好理解,针对第二种情况,下面给出个例子:
1、建表
create table school.t(i int);2、插入数据
insert into t(i) values (1),(2),(3);3、第一次查询
select i, rand(2) from t;结果:
1 0.6555866465490187
2 0.12234661925802624
3 0.64497318737672
4、第二次查询
select i, rand(2) from t;结果:
1 0.6555866465490187
2 0.12234661925802624
3 0.64497318737672