COUNT関数 (指定したカラムの行数を取得する)

広告
eyecatch

COUNT 関数を使うと引数に指定したカラムの行数を取得します。ここでは COUNT 関数の使い方について解説します。

COUNT 関数の使い方

COUNT 関数は引数に指定したカラムの NULL を除いた行数を取得するために使用します。書式は次の通りです。

COUNT(expr)

行数を取得するカラム名を引数で指定してください。引数に * を指定すると NULL かどうかに関係なく行数を取得することができます。

また DISTINCT をつけると、重複した行を除外したあとの行数を取得することができます。

COUNT(DISTINCT expr,[expr...])

-- --

それでは実際に試してみます。次のようなテーブルを作成しました。

create table pointnote (classname varchar(10), name varchar(10), point int);

MySQL/COUNT 関数の使い方(1)

テーブルには次のようなデータを格納しました。

insert into pointnote values ('A', 'Yamada', 72);
insert into pointnote values ('A', 'Suzuki', 82);
insert into pointnote values ('B', 'Togawa', 76);
insert into pointnote values ('A', 'Honda', 90);
insert into pointnote values ('B', NULL, 68);
insert into pointnote values ('B', 'Nishi', 82);
insert into pointnote values ('A', 'Suzuki', NULL);

MySQL/COUNT 関数の使い方(2)

最初に classname カラム、 name カラム、 point カラムの行数(格納されている値が NULL のデータを除く)を取得します。次のように実行してください。

select count(classname), count(name), count(point) from pointnote;

MySQL/COUNT 関数の使い方(3)

次に格納されている値が NULL かどうか関係なくデータの行数を取得します。次のように実行してください。

select count(*) from pointnote;

MySQL/COUNT 関数の使い方(4)

次に重複した値を除外して classname カラム、 name カラム、 point カラムの行数(格納されている値が NULL のデータを除く)を取得します。次のように実行してください。

select count(distinct classname), count(distinct name), count(distinct point) from pointnote;

MySQL/COUNT 関数の使い方(5)

-- --

count 関数の使い方について解説しました。

MySQLの使い方の他の記事を見てみる

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。