Tag: 随机

我怎样才能优化MySQL的ORDER BY RAND()函数?

我想优化我的查询,所以我看着mysql-slow.log 。 我的大部分慢查询都包含ORDER BY RAND() 。 我无法find解决此问题的真正解决scheme。 Theres是MySQLPerformanceBlog中的一个可能的解决scheme,但我不认为这是足够的。 在优化不佳(或频繁更新,用户pipe理)的表,它不工作,或者我需要运行两个或更多的查询,然后才能select我的PHP生成的随机行。 有没有解决这个问题? 一个虚拟的例子: SELECT accomodation.ac_id, accomodation.ac_status, accomodation.ac_name, accomodation.ac_status, accomodation.ac_images FROM accomodation, accomodation_category WHERE accomodation.ac_status != 'draft' AND accomodation.ac_category = accomodation_category.acat_id AND accomodation_category.acat_slug != 'vendeglatohely' AND ac_images != 'b:0;' ORDER BY RAND() LIMIT 1

在Java中生成唯一的随机数

我试图得到0到100之间的随机数。但是我希望它们是唯一的,而不是按顺序重复。 例如,如果我有5个数字,他们应该是82,12,53,64,32而不是82,12,53,12,32我使用这个,但它会产生一个序列相同的数字。 Random rand = new Random(); selected = rand.nextInt(100);

PHP随机string生成器

我试图在PHP中创build一个随机的string,我得到这个绝对没有输出: <?php function RandomString() { $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; $randstring = ''; for ($i = 0; $i < 10; $i++) { $randstring = $characters[rand(0, strlen($characters))]; } return $randstring; } RandomString(); echo $randstring; 我究竟做错了什么?

创build没有重复的随机数字

在这种情况下,最大只有5,所以我可以逐个检查重复,但我怎么能以一个更简单的方式做到这一点? 例如,如果MAX的值是20呢? 谢谢。 int MAX = 5; for (i = 1 , i <= MAX; i++) { drawNum[1] = (int)(Math.random()*MAX)+1; while (drawNum[2] == drawNum[1]) { drawNum[2] = (int)(Math.random()*MAX)+1; } while ((drawNum[3] == drawNum[1]) || (drawNum[3] == drawNum[2]) ) { drawNum[3] = (int)(Math.random()*MAX)+1; } while ((drawNum[4] == drawNum[1]) || (drawNum[4] == drawNum[2]) || (drawNum[4] == drawNum[3]) […]

为什么人们说在使用随机数发生器时存在模数偏差?

我已经看到这个问题很多,但从来没有看到一个真正的具体答案。 所以我打算在这里发布一个,希望能够帮助人们理解为什么在使用随机数生成器(如C ++中的rand()时确实存在“模偏差”。

如何在SQL中请求一个随机行?

我如何在纯SQL中请求一个随机行(或尽可能接近真正的随机)?

为什么我总是用rand()得到相同的随机数序列?

这是我第一次尝试随机数与C(我错过了C#)。 这是我的代码: int i, j = 0; for(i = 0; i <= 10; i++) { j = rand(); printf("j = %d\n", j); } 使用这段代码,我每次运行代码时都会得到相同的序列。 但是如果我在for循环之前添加srand(/*somevalue/*) ,它会产生不同的随机序列。 谁能解释为什么?

O(1)中的唯一(非重复)随机数?

我想生成一个0到1000之间的独一无二的随机数字,这个数字永远不会重复(即,6次不会出现两次),但是这并不会像以前的O(N)search那样。 这可能吗?

如何生成一个随机的字母数字string?

我一直在寻找一种简单的 Javaalgorithm来生成一个伪随机字母数字string。 在我的情况下,它将被用作一个独特的会话/密钥标识符,“可能”在50万代以上是唯一的(我的需求并不需要任何更复杂的东西)。 理想情况下,我将能够根据我的独特需要指定长度。 例如,生成的长度为12的string可能看起来像"AEYGF7K0DM1X" 。

MySQL从600K行中快速select10个随机行

我怎样才能最好地写一个从总共600k中随机select10行的查询?