1

私は自分のWebサイトの広告プラットフォームを作成しています。ここでは、ランダムに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 に答える