2012-07-26 38 views
1

我为我的网站创建了一个广告平台,我们需要随机选择3行,横幅显示的次数也应该平衡。随机选择3行相同的次数

我们可以得到随机行就是这样,

SELECT column FROM table ORDER BY RAND() LIMIT 0,3

,我们可以通过增加数场,而每一次选择行平衡的次数,并用这样少计数选择行,

SELECT * FROM table ORDER BY display_count LIMIT 0,3

但它会返回值如1,2,3,4,5,6等等。但我需要随机选择最少计数的行。任何建议或想法在这将是伟大的?

+0

您可以发布与预期的结果一些示例数据? – Madhivanan 2012-07-26 10:56:20

回答

1

这是你在找什么:

SELECT * 
FROM table 
ORDER BY display_count ASC, RAND() 
LIMIT 0,3; 
0

你有没有试过

SELECT column FROM table ORDER BY RAND(), display_count LIMIT 0,3 

? 我认为这是你想要的。

+0

这是行不通的:( – Stranger 2012-07-26 11:07:04

+0

我测试过,并且工作正常,你能告诉我为什么不工作? – TheGiantBeast 2012-07-28 09:18:18