MySQLユニオンクエリをカウントするにはどうすればよいですか?
ユニオンをカウントするには、つまりUNIONの結果のカウントを取得するには、次の構文を使用します-
SELECT COUNT(*) FROM ( SELECT yourColumName1 from yourTableName1 UNION SELECT yourColumName1 from yourTableName2 ) anyVariableName;
上記の構文を理解するために、いくつかのレコードを含む2つのテーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-
mysql> create table union_Table1 -> ( -> UserId int -> ); Query OK, 0 rows affected (0.47 sec)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです-
mysql> insert into union_Table1 values(1); Query OK, 1 row affected (0.18 sec) mysql> insert into union_Table1 values(10); Query OK, 1 row affected (0.12 sec) mysql> insert into union_Table1 values(20); Query OK, 1 row affected (0.09 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-
mysql> select *from union_Table1;
以下は出力です-
+--------+ | UserId | +--------+ | 1 | | 10 | | 20 | +--------+ 3 rows in set (0.00 sec)
2番目のテーブルを作成するためのクエリ。
mysql> create table union_Table2 -> ( -> UserId int -> ); Query OK, 0 rows affected (0.69 sec)
挿入コマンドを使用して、テーブルにレコードを挿入します。クエリは次のとおりです。
mysql> insert into union_Table2 values(1); Query OK, 1 row affected (0.12 sec) mysql> insert into union_Table2 values(30); Query OK, 1 row affected (0.26 sec) mysql> insert into union_Table2 values(50); Query OK, 1 row affected (0.13 sec)
selectコマンドを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-
mysql> select *from union_Table2;
以下は出力です-
+--------+ | UserId | +--------+ | 1 | | 30 | | 50 | +--------+ 3 rows in set (0.00 sec)
両方のテーブルで、レコードのいずれかが同じである場合、それは1回だけ考慮されます。ユニオンクエリを頼りにするクエリは次のとおりです。
mysql> select count(*) as UnionCount from -> ( -> select distinct UserId from union_Table1 -> union -> select distinct UserId from union_Table2 -> )tbl1;
以下は、カウントを表示する出力です。
+------------+ | UnionCount | +------------+ | 5 | +------------+ 1 row in set (0.00 sec)
-
1つのMySQLクエリで2つのテーブルの行をカウントするにはどうすればよいですか?
まずテーブルを作成しましょう- mysql> create table DemoTable1 ( Name varchar(40) ); Query OK, 0 rows affected (0.81 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1 values('Chris'); Query OK, 1 row affected (0.48 sec) mysql> insert into DemoTable1 values('Robe
-
MySQLクエリでCASE条件でカウントを使用するにはどうすればよいですか?
MySQLでこれにCASEWHENを使用し、COUNT()メソッド内でCASE条件を設定してカウントします。まずテーブルを作成しましょう- mysql> create table DemoTable1374 -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(20), -> Score int -> ); Query OK, 0 rows affe