我的查询使用ORDER BY CASE正确选择结果。
我想在每个案例中随机化结果。即
ORDER BY CASE WHEN apples (randomize) THEN 1 WHEN pears (randomize) THEN 2, etc.
因此,我的结果仍按每种情况排序,但在结果PER情况下,它们是随机的,每次运行查询。
答案 0 :(得分:0)
您可以尝试ORDER BY CASE, RAND()
。 RAND()
当然会生成一个随机数。
但是,我听说SQL中的shuffling元素并不是最有效的方法,最好随机化PHP中的元素。但是每个案例随机化它们并不是一项微不足道的任务。 (PHP rand()
function)
答案 1 :(得分:0)
为简单起见,我经常将NewID()函数抛出到SQL Order By中以随机化结果的顺序。在你的情况下,你可以使用uniqid(),或者如果你真的将查询直接传递给MSSQL,你也可以使用NEWID()......