改变MySQL中RAND()值的含义

时间:2014-04-14 06:53:04

标签: mysql random

我有一个成员表,其中包含我网站每个成员的一行。不断增加新成员。

出于各种原因,我想在我的表中引入一个名为“random”的字段,该字段将间歇性地更新,并且当人们在我的网站上浏览其他人的个人资料时会影响结果的排序。

基本上,我的计划是让一个cron作业全天运行几次,并对随机列进行如下更新;

SET @random = (SELECT COUNT(*) FROM members);
UPDATE members SET random = FLOOR(RAND()*(@random-1)+1);

我的问题是;

我是否仍可以在此列中添加索引以加快对表的查询速度?即每次执行查询时都会重建吗?

有没有办法避免重复的随机值?

0 个答案:

没有答案