1

我正在为我的网站创建一个广告平台,我们需要随机选择 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。但我需要随机选择最少计数的行。对此有任何建议或想法吗?

4

2 回答 2

1

这是你想要的:

SELECT * 
FROM table 
ORDER BY display_count ASC, RAND() 
LIMIT 0,3;
于 2012-07-26T10:56:27.810 回答
0

你试过了吗

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

? 我想这就是你想要的。

于 2012-07-26T10:56:17.407 回答