読者です 読者をやめる 読者になる 読者になる

MySQL_SELECTした行数をカウントする

COUNT を使用するのだが、これは関数
MySQLに関数がある、ということを知らなかった。

 

SELECT  COUNT( column_name )  FROM  table;

 

  • COUNT関数は、引数に指定したカラムの行数を返す
  • NULLカウントされない
  • 「 * 」 を指定した場合はNULLでもカウントされる。
    (行の値が全てNULLでもカウントされるということ)

 

以下のテーブルにおいて各SQLを実行した時の結果の行数。
( idがNULLになるのは通常では考えられないが関数の動きを知る為に入れた )

idnameold
1 Alice 24
2 Bret NULL
3 NULL NULL
NULL NULL NULL
5 Ella 12

 

SELECT COUNT(name) FROM testc;
結果 → 3

SELECT COUNT(old) FROM testc;
結果 → 2

SELECT COUNT(*) FROM testc;
結果 → 5

 

以上。