RAND関数で乱数を発行する

MySQL でランダムな浮動小数点値を発行するには RAND() 関数が用意されています。

SELECT RAND();

+--------------------+
| RAND()             |
+--------------------+
| 0.5202502380313819 |
+--------------------+

1 から 100 の値として利用するには、この数値に 100 を掛けて切り上げしてあげることで実現できます。

切り上げには CEIL() 関数を利用します。

SELECT CEIL(RAND() * 100);

+--------------------+
| CEIL(RAND() * 100) |
+--------------------+
|                 22 |
+--------------------+

この仕組みを利用して、以下のような UPDATE 文を実行すれば、一括で更新できます。

hoge テーブルの category カラムに対して、1 から 100 までのランダムな整数を設定する SQL 文。

UPDATE hoge SET category = CEIL(RAND() * 100);

Tips記事一覧

新着記事一覧です。

関連記事一覧

「MySQLで1から100までのランダムな数値を登録する」に関連した記事一覧です。

TOP