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

IF条件を使用したMySQL合計クエリ?


Sum()はMySQLの集計関数です。 if条件で合計クエリを使用できます。 if条件を使用した合計クエリを理解するために、テーブルを作成しましょう。

テーブルを作成するためのクエリ-

mysql> create table SumWithIfCondition
   −> (
   −> ModeOfPayment varchar(100)
   −> ,
   −> Amount int
   −> );
Query OK, 0 rows affected (1.60 sec)

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです-

mysql> insert into SumWithIfCondition values('Offline',10);
Query OK, 1 row affected (0.21 sec)

mysql> insert into SumWithIfCondition values('Online',100);
Query OK, 1 row affected (0.16 sec)

mysql> insert into SumWithIfCondition values('Offline',20);
Query OK, 1 row affected (0.13 sec)

mysql> insert into SumWithIfCondition values('Online',200);
Query OK, 1 row affected (0.16 sec)

mysql> insert into SumWithIfCondition values('Offline',30);
Query OK, 1 row affected (0.11 sec)

mysql> insert into SumWithIfCondition values('Online',300);
Query OK, 1 row affected (0.17 sec)
>

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from SumWithIfCondition;

以下は出力です-

+---------------+--------+
| ModeOfPayment | Amount |
+---------------+--------+
| Offline       |     10 |
| Online        |    100 |
| Offline       |     20 |
| Online        |    200 |
| Offline       |     30 |
| Online        |    300 |
+---------------+--------+
6 rows in set (0.00 sec)

if条件を使用した合計クエリは次のとおりです。

ケース1 -オンライン支払いモードの場合

クエリは次のとおりです-

mysql> select sum(if(ModeOfPayment = 'Online',Amount,0)) as TotalAmount from SumWithIfCondition;

以下は出力です-

+-------------+
| TotalAmount |
+-------------+
|         600 |
+-------------+
1 row in set (0.00 sec)

ケース2 -オフライン支払いモードの場合

クエリは次のとおりです-

mysql> select sum(if(ModeOfPayment = 'Offline',Amount,0)) as TotalAmount from SumWithIfCondition;

以下は出力です-

+-------------+
| TotalAmount |
+-------------+
|          60 |
+-------------+
1 row in set (0.00 sec)

  1. MySQLでSelectクエリを使用して挿入

    SELECTクエリを使用した挿入の場合、構文は次のとおりです- insert into yourTableName(yourColumnName1,yourColumnName2,yourColumnName3,...N) select yourValue1,yourValue2,yourValue3,......N;を選択します。 まずテーブルを作成しましょう- mysql> create table DemoTable1603    -> (    -> StudentId int,    -> Stud

  2. MySQLの別の列で条件が満たされた場合に、列のセルを合計するにはどうすればよいですか?

    このために、GROUP BY句とともに集計関数SUM()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> EmployeeName varchar(20),    -> JoiningDate date,    -> Salary int    -> ); Query OK, 0 rows affected (0.54 sec) 挿入コマンド-を使用して、テーブルにいくつか