MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで列(カラム)の値を100で割るクエリの書き方

MySQLでは、UPDATE文と算術演算子「/」を組み合わせることで、テーブルの列(カラム)に格納された値をまとめて割り算できます。ここでは、実際のサンプルを使って、列全体の値を100で割る手順をわかりやすく解説します。

1. サンプルテーブルを作成する

まずは、float型の「Number」という列を持つテーブルを作成しましょう。

mysql> create table DemoTable
    (
    Number float
    );
Query OK, 0 rows affected (0.47 sec)

2. レコードを挿入する

続いて、INSERT文を使ってテーブルにデータを追加します。

mysql> insert into DemoTable values(1000);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values(1);
Query OK, 1 row affected (0.27 sec)
mysql> insert into DemoTable values(10);
Query OK, 1 row affected (0.30 sec)
mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable values(390);
Query OK, 1 row affected (0.09 sec)

3. 挿入したレコードを確認する

SELECT文ですべてのレコードを表示して、現在の状態を確認しておきます。

mysql> select *from DemoTable;

上記のクエリを実行すると、次のような出力が得られます。

+--------+
| Number |
+--------+
| 1000   |
| 1      |
| 10     |
| 100    |
| 390    |
+--------+
5 rows in set (0.00 sec)

4. 列の値を100で割るUPDATEクエリ

いよいよ本題です。列の値を100で割るには、以下のようにUPDATE文で自分自身の値を演算結果で置き換えます。

mysql> update DemoTable set Number=Number/100;
Query OK, 5 rows affected (0.09 sec)
Rows matched: 5 Changed: 5 Warnings: 0

このように「set 列名 = 列名 / 100」と記述することで、すべての行に対して一括で除算が適用されます。

5. 更新後の結果を確認する

もう一度SELECT文を実行して、更新後のデータを見てみましょう。

mysql> select * from DemoTable;

実行結果は以下の通りです。

+--------+
| Number |
+--------+
| 10     |
| 0.01   |
| 0.1    |
| 1      |
| 3.9    |
+--------+
5 rows in set (0.00 sec)

まとめ

このように、UPDATE文で「set Number = Number / 100」と指定するだけで、テーブル内の該当列の値をすべて100で割ることができます。たとえば1000は10に、1は0.01に変換されています。同様の手法は、掛け算や足し算など他の四則演算にも応用できるので、数値データの一括変換が必要な場面でぜひ活用してください。なお、元の値を保持したい場合は、事前にバックアップを取るか、別の列へ計算結果を格納するのが安全です。

  1. MySQLクエリで列にユーザー定義の値を追加する方法

    MySQLでは、UNION ALLを活用することで、既存の列の値に加えて、ユーザーが自由に定義した値をクエリ結果に追加できます。ここでは、ENUM型の列を持つテーブルを例に、その具体的な手順を解説します。 1. サンプルテーブルの作成 まず、ENUM型のカラムを持つテーブルを作成します。 mysql> create table DemoTable1847      (      GameStatus ENUM(PENDING,COMPLETED,CANCELLED)      ); Query OK

  2. MySQLクエリで列を分割して従業員の月給を取得する方法

    MySQLで従業員の月給を取得する方法年間給与が保存されているテーブルから、給与列を12で割ることで月給を簡単に算出できます。ここでは、サンプルテーブルを作成し、実際に月給を取得するクエリの手順を解説します。1. テーブルの作成まず、従業員情報を格納するテーブルを作成しましょう。mysql> create table DemoTable1957 ( EmployeeId int, EmployeeName varchar(20), EmployeeSalary int ); Query OK, 0 rows affected (0.00 sec)2