スポンサーリンク

【SQL】COUNT(*)のアスタリスクの意味

記事内に広告が含まれています。

SQLのCOUNT(*)は、テーブル内の全行数をカウントするために使用される関数です。

ここで使われる「アスタリスク(*)」は、すべての列を意味し、行が存在する限り、その行に含まれるデータに関係なくカウントされます。

このアプローチは、主にテーブル内のレコードの総数を知りたいときに使います。

一方で、特定のカラム名を指定してCOUNT(column_name)と書くと、そのカラムにNULL以外の値が入っている行数のみがカウントされます。つまり、NULL値は無視されます。

使用例

COUNT(*)
SELECT COUNT(*) FROM employees;

このクエリは、employeesテーブル内の全行数を返します。

NULL値が存在するかどうかに関係なく、すべての行がカウントされます。

テーブルに1万行があれば、COUNT(*)の結果は1万になります。

COUNT(column_name)
SELECT COUNT(department) FROM employees;

このクエリは、employeesテーブルのdepartmentカラムに値が存在する行だけをカウントします。もし500行にNULLが含まれている場合、このクエリの結果は9500になります。

COUNT(*) vs COUNT(column_name)

データベース全体のレコード数を取得したいときにはCOUNT(*)が便利です。

一方、特定のカラムにデータがあるレコードだけを数えたい場合にはCOUNT(column_name)を使うとよいでしょう。

スポンサーリンク
SQL
著者SNS
タイトルとURLをコピーしました