MySQL SELECT DISTINCTとカウント?
これを実現するには、MySQLの集計関数count(*)でGROUPBYコマンドを使用する必要があります。構文は次のとおりです。
SELECT yourColumnName,COUNT(*) AS anyVariableNameFROM yourTableName GROUP BY yourColumnName;
上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです。
mysql> create table selectDistinct_CountDemo -> ( -> Id int NOT NULL AUTO_INCREMENT, -> Name varchar(10), -> AppearanceId int, -> PRIMARY KEY(Id) -> ); Query OK, 0 rows affected (0.63 sec)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです。
mysql> insert into selectDistinct_CountDemo(Name,AppearanceId) values('Larry',1); Query OK, 1 row affected (0.18 sec) mysql> insert into selectDistinct_CountDemo(Name,AppearanceId) values('John',2); Query OK, 1 row affected (0.24 sec) mysql> insert into selectDistinct_CountDemo(Name,AppearanceId) values('Larry',3); Query OK, 1 row affected (0.12 sec) mysql> insert into selectDistinct_CountDemo(Name,AppearanceId) values('Larry',10); Query OK, 1 row affected (0.18 sec) mysql> insert into selectDistinct_CountDemo(Name,AppearanceId) values('Carol',11); Query OK, 1 row affected (0.18 sec) mysql> insert into selectDistinct_CountDemo(Name,AppearanceId) values('Larry',15); Query OK, 1 row affected (0.18 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです。
mysql> select *from selectDistinct_CountDemo;
出力は次のとおりです。
+----+-------+--------------+ | Id | Name | AppearanceId | +----+-------+--------------+ | 1 | Larry | 1 | | 2 | John | 2 | | 3 | Larry | 3 | | 4 | Larry | 10 | | 5 | Carol | 11 | | 6 | Larry | 15 | +----+-------+--------------+ 6 rows in set (0.00 sec)
個別に選択してカウントするクエリは次のとおりです。
mysql> select Name,count(*) as TotalAppearance from selectDistinct_CountDemo -> group by Name;
出力は次のとおりです。
+-------+-----------------+ | Name | TotalAppearance | +-------+-----------------+ | Larry | 4 | | John | 1 | | Carol | 1 | +-------+-----------------+ 3 rows in set (0.00 sec)
-
単一のクエリでのMySQLUNIONSELECTおよびIN句
まずテーブルを作成しましょう- mysql> create table DemoTable1 -> ( -> StudentId int, -> StudentName varchar(20) -> ); Query OK, 0 rows affected (1.24 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1 values(210,'Adam'
-
テーブルの個別の列から平均を選択するMySQLクエリ?
平均を取得するには、AVG()を使用し、それをDISTINCTとともに使用して、個別のレコードから計算します。まずテーブルを作成しましょう- mysql> create table DemoTable1934 ( StudentName varchar(20), StudentMarks int ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into