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

MySQLで特定の列の値から数値を減算する方法

MySQLのテーブル内にある特定の列の値から数値を減算したい場合は、UPDATE文を使って該当する行の値を更新するだけで実現できます。この記事では、実際にテーブルを作成し、データを挿入して、列の値から数値を減算する手順を順番に解説します。

1. テーブルを作成する

まず、減算対象となる整数型(int)の列を持つテーブルを作成しましょう。

mysql> create table DemoTable1372
    -> (
    -> Value int
    -> );
Query OK, 0 rows affected (0.77 sec)

2. サンプルデータを挿入する

INSERTコマンドを使って、テーブルにいくつかのレコードを追加します。

mysql> insert into DemoTable1372 values(500);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable1372 values(100);
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable1372 values(900);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable1372 values(1000);
Query OK, 1 row affected (0.32 sec)

3. 現在のレコードを確認する

SELECT文を使って、テーブル内のすべてのレコードを表示してみましょう。

mysql> select * from DemoTable1372;

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

+-------+
| Value |
+-------+
|   500 |
|   100 |
|   900 |
|  1000 |
+-------+
4 rows in set (0.00 sec)

4. 列の値から数値を減算する

ここが本題です。特定の行の値から数値を減算するには、UPDATE文で「Value = Value - 減算したい数値」という形で指定します。以下の例では、Value が 900 の行から 50 を減算しています。

mysql> update DemoTable1372 set Value=Value-50 where Value=900;
Query OK, 1 row affected (0.52 sec)
Rows matched: 1  Changed: 1 Warnings: 0

5. 更新結果を確認する

もう一度テーブルの内容を表示して、減算が正しく反映されているか確認しましょう。

mysql> select * from DemoTable1372;

実行すると、次のように 900 が 850 に更新されていることがわかります。

+-------+
| Value |
+-------+
|   500 |
|   100 |
|   850 |
|  1000 |
+-------+
4 rows in set (0.00 sec)

まとめ

MySQLで列の値から数値を減算するには、UPDATE テーブル名 SET 列名 = 列名 - 減算値 WHERE 条件; という構文を使用します。WHERE句で対象の行を絞り込むことで、意図したレコードだけを安全に更新できます。なお、WHERE句を省略するとテーブル内の全行が更新されるため、実行前には必ず条件を確認することをおすすめします。

  1. MySQLで値が「0」の場合に別の列から値を取得する方法

    MySQLで値が「0」の場合に別の列から値を取得する方法MySQLでは、IF()関数を使用することで、特定の列の値が「0」だった場合に、別の列の値を代わりに取得できます。条件分岐を1つのクエリ内で簡単に実現できる便利な関数です。IF()関数の基本構文select IF(yourColumnName1=0,yourColumnName2,yourColumnName1) as anyAliasName from yourTableName;この構文では、最初の列の値が「0」であれば2番目の列の値を返し、「0」以外であれば最初の列の値をそのまま返します。サンプルテーブルの作成まず、動作確認用のテー

  2. MySQLで列から最大値を取得する方法

    MySQLで列の最大値を取得するには?MySQLのテーブルから特定の列の最大値を取得するには、ORDER BY句とLIMIT句を組み合わせる方法が便利です。ここでは、実際にテーブルを作成し、データを挿入して、最大値を取得する手順を順番に解説します。1. テーブルを作成するまず、以下のコマンドでサンプル用のテーブルを作成します。mysql> create table DemoTable -> ( -> Value int -> ); Query OK, 0 rows affected (0.63 sec)2. レコードを挿入する次に、INSERTコ