id | name
-------+-------------------------------------
209096 | Pharmacy
204200 | Eyecare Center
185718 | Duffy PC
214519 | Shopko
162225 | Edward Jones
7609 | Back In Action Chiropractic Center
我用select id, name from customer order by random()
行,而不必重复记录
有6条,我只想说当过我询问,我会得到一个唯一的行每次6次,然后从第一或再次启动记录每次排序时,顶部不重复
你想选择6的所有可能的顺序吗?你能澄清你的问题吗? – 2010-09-03 05:37:42
如果我遵循,你想要做的事实质上就是随机地列出所有记录,并且每个查询都会从列表中获取下一个项目,直到它耗尽为止,然后从头开始重新开始。是对的吗? – 2010-09-03 05:45:10
如果是这样,我会建议使用哈希函数,并按MD5(CONCAT('somesalt',id,name))进行排序。排序不会完全是随机的,但对于大多数目的而言它将足够接近,并且这样您就可以使用LIMIT/OFFSET。 (你应该提到什么数据库 - MySQL,SQL Server,Oracle,Postgres等 - 你在用你的问题。) – 2010-09-03 05:48:39