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