2012-11-21 26 views

回答

2

你可以做这样的:

SELECT * FROM mytable ORDER BY RAND(); 

这一个例子here被提及。 正如documentation中提到的,rand()不会生成完美的随机数字/序列(但它可能足以在网站上实际使用)。

你也可以使用limit只选择N(例如5)记载:

SELECT * FROM mytable ORDER BY RAND() LIMIT 5; 
+0

感谢您的回答。我试图在我的代码中使用它。它正在工作,但在点击下一页后,第1页中的一些数据出现在第2页等等。我试图编辑我的PHP代码,但它不工作。我是否需要使用php编码而不是ORDER BY Rand()?谢谢:D – user1822825

+0

@ user1822825是的,每次运行查询时(每次加载PHP脚本时都会运行,这将发生在“下一页”等),所有事情都将随机化。如果你想避免这种情况,我认为你最好在PHP中进行随机化而不是查询。一些逻辑将需要避免页面之间的重新随机化。我认为这将是另一篇文章的问题,在这篇文章中,您澄清并指定了您的需求...... – poplitea

2

添加ORDER BY RAND()子句来查询。虽然

一个警告,这个排序不会是非常有效的...

1
SELECT * FROM clients 
ORDER BY RAND()