这是我正在尝试对较大的连接查询进行的简化查询。它仍在打破这个小规模。我正在尝试为1-60范围内的每一行生成一个随机数。然后我想用这个随机数来排序返回的行。为什么MySQL Rand()讨厌我?
SELECT downloads . * ,
(FLOOR(1 + (RAND() *60))) AS randomtimer
FROM downloads
ORDER BY randomtimer
LIMIT 25
我有2个数据库我试过这个查询。一个活着的人和一个开发人员。我并排比较了两者,它们在结构上都是相同的。它在开发人员上正常工作。返回由randomtimer排序的行。
活动表格返回randomtimer列中的所有1。如果我用randomtimer ASC命令,他们会变成60岁。如果我从Order By Clause中删除randomtimer,它会返回正确的单个值。所以有些东西正在调整ORDER BY表达式的值。
任何人有任何想法呢?我可以俯视一些东西吗? WTF? WTF?
你为什么要随机排序? – 2009-06-15 21:09:43