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

「UP」という名前の同様の列を持つ5つのテーブルから合計を計算するMySQLクエリ?


このためには、SUM()とともにUNIONALLを使用します。 5つのテーブルを作成しましょう-

mysql> create table DemoTable1977
   (
   UP int
   );
Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1977 values(10);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1977 values(20);
Query OK, 1 row affected (0.00 sec)
mysql> select * from DemoTable1977;
+------+
| UP   |
+------+
|   10 |
|   20 |
+------+
2 rows in set (0.00 sec)
mysql> create table DemoTable1978
   (
   UP int
   );
Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1978 values(30);
Query OK, 1 row affected (0.00 sec)
mysql> select * from DemoTable1978;
+------+
| UP   |
+------+
|   30 |
+------+
1 row in set (0.00 sec)
mysql> create table DemoTable1979
   (
   UP int
   );
Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1979 values(40);
Query OK, 1 row affected (0.00 sec)
mysql> select * from DemoTable1979;
+------+
| UP   |
+------+
|   40 |
+------+
1 row in set (0.00 sec)
mysql> create table DemoTable1980
   (
   UP int
   );
Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1980 values(50);
Query OK, 1 row affected (0.00 sec)
mysql> select * from DemoTable1980;
+------+
| UP   |
+------+
|   50 |
+------+
1 row in set (0.00 sec)
mysql> create table DemoTable1981
   (
   UP int
   );
Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1981 values(60);
Query OK, 1 row affected (0.00 sec)
mysql> select * from DemoTable1981;
+------+
| UP   |
+------+
|   60 |
+------+
1 row in set (0.00 sec)

これは、「UP」という名前の単一の列を持つ5つのテーブルから合計を計算するためのクエリです-

mysql> select  sum(TotalSum)
   from    (
      select sum(UP) as TotalSum
      from DemoTable1977
      union all
      select sum(UP)
      from DemoTable1978
      union all
      select sum(UP)
      from DemoTable1979
      union all
      select sum(UP)
      from DemoTable1980
      union all
      select sum(UP)
      from DemoTable1981
   
      ) tbl;

これにより、次の出力が生成されます-

+---------------+
| sum(TotalSum) |
+---------------+
|           210 |
+---------------+
1 row in set (0.00 sec)

  1. 値EMP1、EMP2、EMP3などの列から文字列を削除するMySQLクエリ。

    値EMO1、EMP2などから文字列を削除するには、LENGTH()とともにRIGHT()を使用する必要があります。まずテーブルを作成しましょう- mysql> create table DemoTable1540    -> (    -> EmployeeCode varchar(20)    -> ); Query OK, 0 rows affected (0.39 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable

  2. 「order」という名前のテーブルでのMySQLクエリエラー?

    注文は予約語です。予約語を引き続き使用するには、列名の前後にバッククォートを使用する必要があります。まずテーブルを作成しましょう- mysql> create table `order`    -> (    -> StudentId int    -> ); Query OK, 0 rows affected (1.78 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into `order` values(101); Query OK, 1