1

次の 3 つのフィールドを持つ MySQL テーブルがあります。

id, name, chance
1001, name1, 1
1002, name2, 3
1003, name3, 1

レコードを100回ランダムに選択したい。100 回のうち、レコード ID 1001 が 20 回 (1/5 の確率) 選択され、レコード ID 1002 が 60 回 (3/5 の確率) 選択され、レコード ID 1003 が 20 回 (1/5 の確率) 選択されます。機会)。

MySQLおよび/またはPHPでそれを行う方法は?

よろしくお願いします!

4

2 に答える 2

2

PHPで乱数を生成するには

int rand ( int $min , int $max )

次に、一連の if ステートメントを使用します。

例えば:

$random = rand (1,100);
(INSERT LOOP)
if ($random <= 20){
$id1001 = $id1001 + 1;
}
else if ($random > 20 and $random < 80){
$id1002 = $id1002 + 1;
}
else if ($random > 80 and $random < 100){
$id1003 = $id1003 + 1;
}
(END LOOP)
于 2013-07-04T18:18:53.520 に答える