プチMySQLメモ
マスターテーブル user
に shop_id
(int) カラムがあって、ユーザの登録店舗を保存しているとする。
店舗再設置に伴い店舗をランダムに振り分ける場合
UPDATE
user
SETshop_id
= ROUND(RAND()*10)
これで、0~10のIDが振られる。 最低値を1にするなら 1+RAND()*9。
MySQLのRAND()関数は、0~1.0の範囲の小数乱数を発生するので、これに10を乗算して0~10.0の範囲にして、ROUND()関数で小数点以下を丸めてint型に適合させる。
(2388)