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

MySQLで製品テーブルから製品の合計金額を計算する方法

MySQLで製品テーブルから合計金額を算出する手順

在庫管理や売上集計などの場面では、「数量 × 単価」の合計値を求めたいケースがよくあります。MySQLでは SUM() 関数と乗算を組み合わせることで、この計算を1つのSQLクエリで簡単に実現できます。

ここでは、サンプルテーブルを作成し、実際に合計金額を計算するまでの手順を解説します。

1. テーブルの作成

まず、製品ID・数量・単価を持つテーブルを作成します。

mysql> create table DemoTable
    (
    ProductId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ProductQuantity int,
    ProductPrice int
    );
Query OK, 0 rows affected (0.19 sec)

2. レコードの挿入

次に、INSERT文を使ってテーブルにデータを登録します。

mysql> insert into DemoTable(ProductQuantity,ProductPrice) values(10,100);
Query OK, 1 row affected (0.06 sec)

mysql> insert into DemoTable(ProductQuantity,ProductPrice) values(5,11);
Query OK, 1 row affected (0.04 sec)

mysql> insert into DemoTable(ProductQuantity,ProductPrice) values(3,140);
Query OK, 1 row affected (0.05 sec)

mysql> insert into DemoTable(ProductQuantity,ProductPrice) values(2,450);
Query OK, 1 row affected (0.15 sec)

3. データの確認

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

mysql> select *from DemoTable;

実行すると、以下のような結果が得られます。

+-----------+-----------------+--------------+
| ProductId | ProductQuantity | ProductPrice |
+-----------+-----------------+--------------+
| 1         | 10              | 100          |
| 2         | 5               | 11           |
| 3         | 3               | 140          |
| 4         | 2               | 450          |
+-----------+-----------------+--------------+
4 rows in set (0.00 sec)

4. 合計金額を計算するクエリ

製品ごとの「数量 × 単価」を求め、それらを合計するには、以下のように SUM(ProductQuantity * ProductPrice) を使用します。AS 句で別名を付ければ、結果の列名も分かりやすくなります。

mysql> select sum(ProductQuantity*ProductPrice) as Total_of_Products from DemoTable;

実行結果は次のとおりです。

+-------------------+
| Total_of_Products |
+-------------------+
| 2375              |
+-------------------+
1 row in set (0.00 sec)

計算内容の解説

結果の「2375」は、各行の数量と単価を掛け合わせた値をすべて足したものです。

  • 10 × 100 = 1000
  • 5 × 11 = 55
  • 3 × 140 = 420
  • 2 × 450 = 900

合計:1000 + 55 + 420 + 900 = 2375

このように、SUM() 関数の中で列同士の演算を行うことで、複雑な集計処理もシンプルなクエリで実現できます。WHERE句やGROUP BY句と組み合わせれば、特定の条件での集計やカテゴリ別の合計算出にも応用できます。

  1. MySQLで1番目のテーブルの値を加算して2番目のテーブルのフィールドを更新する方法

    MySQLでは、あるテーブルの値を別のテーブルの値に加算して、フィールドを更新することができます。この記事では、ユーザー定義変数とUPDATE文を組み合わせて、1番目のテーブルの値を2番目のテーブルのすべての値に加算する方法を、サンプルコードとともに解説します。 1番目のテーブルを作成する まず、create table文を使って1番目のテーブル「DemoTable1」を作成しましょう。 mysql> create table DemoTable1    (    value int    ); Query OK, 0 rows

  2. MySQLでユーザー定義変数の値に最も近いレコードをテーブルから取得する方法

    MySQLでは、ABS()関数とORDER BY句を組み合わせることで、ユーザー定義変数に格納した値に最も近いレコードを簡単に取得できます。この記事では、実際にテーブルを作成し、指定した値に最も近いレコードを取り出す手順を詳しく解説します。 1. サンプルテーブルの作成 まず、CREATE TABLE文を使ってテーブルを作成します。 mysql> create table DemoTable ( CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY, ProductAmount int ); Query OK, 0 row