网上有很多不同的例子,但我希望有人能找到符合我要求的解决方案......当然,我不能成为唯一的解决方案!
我正在建立一个摄影网站,并希望在着陆页上显示50多个图像缩略图。踢球者是我希望它使用PHP随机显示图片而不重复。我还希望每个图像都有自己独特的href和title参数。
所以,我创建了一个mySQL表,其中包含:
id image_path, image_href, image_title
我想我会轻易地重新调整图像的大小并将它们放在根目录中的一个文件夹中,然后在行image_path中调用它。
有没有人知道如何以最有效的方式做到这一点?我听说rand()在数据库变大时很糟糕。数据库将增长到数万个图像。
如果您需要/想要澄清,请告诉我。
感谢!!!
编辑:我可能在我的研究中遇到了答案,但我对PHP很新......:)
答案 0 :(得分:7)
您可以查询数据库,按RAND()
对结果进行排序,然后选择前50名
SELECT id, image_path, image_href, image_title
FROM table
ORDER BY RAND()
LIMIT 50
除非您的表本身有重复项,否则不保证重复结果。
此问题概述了一种更快捷的方法:MySQL select 10 random rows from 600K rows fast