mysql中的随机顺序依次排列

时间:2010-06-19 11:14:55

标签: php mysql

我的查询使用ORDER BY CASE正确选择结果。 我想在每个案例中随机化结果。即  ORDER BY CASE WHEN apples (randomize) THEN 1 WHEN pears (randomize) THEN 2, etc. 因此,我的结果仍按每种情况排序,但在结果PER情况下,它们是随机的,每次运行查询。

2 个答案:

答案 0 :(得分:0)

您可以尝试ORDER BY CASE, RAND()RAND()当然会生成一个随机数。

但是,我听说SQL中的shuffling元素并不是最有效的方法,最好随机化PHP中的元素。但是每个案例随机化它们并不是一项微不足道的任务。 (PHP rand() function

答案 1 :(得分:0)

为简单起见,我经常将NewID()函数抛出到SQL Order By中以随机化结果的顺序。在你的情况下,你可以使用uniqid(),或者如果你真的将查询直接传递给MSSQL,你也可以使用NEWID()......