MySQL で個別の値をカウントする
Preet Sanghavi
2023年1月3日
このチュートリアルでは、個別の値をカウントするためのさまざまな方法を紹介します。
MySQL の COUNT()
メソッドは、テーブル内の行の総数を出力として提供します。ただし、この記事では、式の個別の出現回数を計算またはカウントする方法を理解することに関心があります。この操作を実行するための構文は、COUNT(DISTINCT expression)
と書くことができます。このコマンドは、特定の式の出力として、null 以外の個別の値の総数を示します。
このメソッドの動作を見てみましょう。
ただし、開始する前に、操作するダミーデータセットを作成します。ここでは、テーブル student_details
とその中のいくつかの行を作成します。
-- create the table student_details
CREATE TABLE student_details(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_lastName varchar(255) DEFAULT NULL,
primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
VALUES(1,"Preet","Sanghavi"),
(2,"Rich","John"),
(3,"Veron","Brow"),
(4,"Geo","Jos"),
(5,"Hash","Shah"),
(6,"Sachin","Parker"),
(7,"David","Miller");
上記のクエリは、学生の名前と名前を含む行とともにテーブルを作成します。データのエントリを表示するために、次のコードを使用します。
SELECT * FROM student_details;
上記のコードは次の出力を提供します。
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
MySQL で個別の値をカウントする
MySQL の COUNT (DISTINCT expression)
関数は、前述のように、一意の非 null 値を持つ行の数を提供します。一意の名を持つ学生の数を数えるために、次のコードを使用します。
-- Count the number of students with different first names
SELECT COUNT(DISTINCT stu_firstName) as distinct_first_names FROM student_details ;
上記のコードは、student_details
テーブルからの個別の名の数をカウントします。上記のコードの出力は次のとおりです。
distinct_first_names
7
したがって、一意の名前(Preet、Rich、Veron、Geo、Hash、Sachin、および David)がカウントされ、最終的なカウントが 7 になっていることがわかります。
注
上記のコードでは、MySQL の
AS
キーワードとしてエイリアス distinct_first_names
を使用しています。著者: Preet Sanghavi