MySQLでランダムな4桁の数値を生成する方法を解説
MySQLでランダムな4桁の数値を生成するには?
MySQLでは、RAND()関数とFLOOR()関数を組み合わせることで、ランダムな4桁の数値を簡単に生成できます。基本的な構文は以下の通りです。
SELECT FLOOR(0 + RAND() * 10000);
RAND()は0以上1未満のランダムな浮動小数点数を返し、それに10000を掛けることで0〜9999の範囲の値を生成します。FLOOR()で小数点以下を切り捨てることで、整数の4桁の数値が得られます。
実際に、テーブルのカラムへランダムな4桁の数値を設定する手順を見ていきましょう。
1. テーブルを作成する
まず、サンプル用のテーブルを作成します。
mysql> create table DemoTable717 (
UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
UserPassword int
);
Query OK, 0 rows affected (0.81 sec)ここでは、自動採番される「UserId」カラムと、パスワードを格納する「UserPassword」カラムを持つテーブルを定義しています。
2. テストデータを挿入する
INSERTコマンドを使って、いくつかのレコードを登録します。
mysql> insert into DemoTable717(UserPassword) values(1454343); Query OK, 1 row affected (0.21 sec) mysql> insert into DemoTable717(UserPassword) values(674654); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable717(UserPassword) values(989883); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable717(UserPassword) values(909983); Query OK, 1 row affected (0.15 sec)
3. 登録したレコードを確認する
SELECT文ですべてのレコードを表示します。
mysql> select *from DemoTable717;
実行結果は以下の通りです。
+--------+--------------+ | UserId | UserPassword | +--------+--------------+ | 1 | 1454343 | | 2 | 674654 | | 3 | 989883 | | 4 | 909983 | +--------+--------------+ 4 rows in set (0.00 sec)
現時点では6〜7桁の数値が登録されていることがわかります。
4. ランダムな4桁の数値で更新する
次に、「UserPassword」カラムに対して、ランダムな4桁の数値を設定するUPDATE文を実行します。
mysql> update DemoTable717 SET UserPassword=(select floor(0+ RAND() * 10000)); Query OK, 4 rows affected (0.22 sec) Rows matched: 4 Changed: 4 Warnings: 0
このクエリにより、すべての行の「UserPassword」カラムが、ランダムに生成された0〜9999の範囲の整数で更新されます。
5. 更新結果を確認する
もう一度テーブルの内容を確認してみましょう。
mysql> select *from DemoTable717;
実行結果は以下のようになります(生成される数値は実行ごとに異なります)。
+--------+--------------+ | UserId | UserPassword | +--------+--------------+ | 1 | 4319 | | 2 | 3902 | | 3 | 6553 | | 4 | 1060 | +--------+--------------+ 4 rows in set (0.00 sec)
補足:先頭に0が付く4桁にしたい場合
上記の方法では「0019」のような先頭ゼロ付きの4桁は生成されません(整数として扱われるため19になります)。先頭ゼロを含む文字列として4桁を厳密に扱いたい場合は、LPAD()関数を併用すると便利です。
SELECT LPAD(FLOOR(RAND() * 10000), 4, '0');
このようにすることで、常に4桁の形式でランダムな数値を取得できます。用途に応じて使い分けてください。
-
MySQLコマンドラインでデータベースを作成する方法を初心者向けに解説
MySQLコマンドラインでデータベースを作成する手順 この記事では、WindowsのコマンドプロンプトからMySQLに接続し、データベースを作成する一連の手順をスクリーンショット付きで解説します。初心者の方でも迷わず進められるよう、順番に見ていきましょう。 1. コマンドプロンプトを開く まず、コマンドプロンプトを起動します。キーボードのショートカット「Windows + R」キーを押すと、「ファイル名を指定して実行」ダイアログが表示されます。 2. 「CMD」と入力してOKをクリック 表示された入力欄に CMD と入力し、「OK」ボタンをクリックしてください。 3. コマンドプロンプトが
-
Pythonで複素数を作成する方法:j表記とcomplex()関数の使い方
複素数とは複素数は、実部と虚部の2つの要素で構成される数値です。実部は通常の浮動小数点数(float)であり、虚部は任意の浮動小数点数に -1 の平方根を掛けたものとして表現されます。Pythonでは、-1 の平方根は j という記号で定義されています。j表記による複素数の作成Pythonでは、実部と虚部を j を使って直接記述することで、簡単に複素数を作成できます。>>> no = 5 + 6j>>> no.real5.0>>> no.imag6.0>>> type(no)<class complex>このよ