【SQL】 COUNT関数の使い方(件数を取得する)

集計関数
集計関数
この記事は約3分で読めます。
Recommended Articles

【SQL】 COUNT関数の使い方(件数を取得する)

COUNT関数は、以下に対応しています。
ORACLE  MS-SQL  MS-Access MySQL 

COUNT関数 : 書式

書式 COUNT ( [ DISTINCT | ALL ] column )
引数 column : 行をカウントする列名
戻値 カウント数

COUNT関数 : 解説

 COUNT関数は、指定した列に値が何行あるかを数える関数です。引数で指定する列内のNULL値以外の値の数を数えます。ただ、単純にすべての行数が欲しい場合は、*(アスタリスク)を指定し、*を指定した場合には、NULL値も含んだ行数を数えます

 指定できるキーワードは、ALLとDISTINCTの2種類です。DISTINCTを指定すると、指定した列の中で重複する値は1つとしてカウントします。つまり、違う値が何種類あるかを知りたいときに使います。ALLはすべての値をカウントします。何も指定をしない場合は、デフォルトでALLが指定されていることになります。

COUNT関数 : 使用例 (すべての行をカウント)

SQL文 SELECT COUNT(*) FROM 試験結果;

実行結果 

COUNT(*)
4

 表  試験結果

名前クラス得点
大谷翔平A90
遠藤航B95
大坂なおみC90
上野由紀子A80

COUNT関数 : 使用例 (DISTINCT)

DISTINCTを使うことで、重複を1としてカウントできます。

 

SQL文 
 SELECT COUNT(DISTINCT 得点) FROM 試験結果;

実行結果 

COUNT(DISTINCT 得点)
3

 表  試験結果

名前クラス得点
大谷翔平A90
遠藤航B95
大坂なおみC90
上野由紀子A80

MSAccessでは、DISTINCTは使うことができません。

GROUP BY句と組合せたCOUNT関数の使用例

 COUNT関数は、GROUP BY句と組合せて使うこともできます。GROUP BYでグループ化し、各グループに何行あるかを問合せることができます

SQL文 
SELECT クラス, COUNT(*) FROM 試験結果
GROUP BY クラス;

実行結果 

クラスCOUNT(*)
A2

1

C

1

 

 表  試験結果

名前クラス得点
大谷翔平A90
遠藤航B95
大坂なおみC90
上野由紀子A80

関連リンク

関数一覧
SQLリファレンス > 関数
ORACLE、MS-SQL Server、MS-Access、MySQLで使用する関数の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。

Recommended Articles
いちれべ.com