【SQL】COUNT関数でレコード数をカウントする方法

SQL(Structured Query Language)は、データベース管理における不可欠なツールであり、データの抽出、操作、集計など幅広いタスクに利用されています。データベースのテーブル内の行数を知りたい場面が多く、その際に便利なのがSQLのCOUNT関数です。この記事では、SQLのCOUNT関数の基本的な使い方と、さまざまなケースでの活用方法について解説します。

COUNT関数の基本構文

SELECT COUNT(column_name)
FROM table_name
WHERE condition;
  • column_name:カウントしたい列を指定します。通常、主キー列や特定の条件に一致するデータを数えるための列を指定します。COUNT(*)とすることで、テーブル内のすべての行をカウントできます。
  • table_name:データを取得したいテーブルの名前を指定します。
  • condition:オプションで、カウント対象の行をフィルタリングする条件を指定します。条件が指定されない場合、テーブル内のすべての行がカウントされます

テーブル内の行数を数える

テーブル内のすべての行の数をカウントする簡単な例です。

SELECT COUNT(*)
FROM employees;

特定の条件に一致する行をカウントする

特定の条件に一致する行の数をカウントする例です。ここでは、注文ステータスが’Shipped’である行の数を数えます。

SELECT COUNT(*)
FROM orders
WHERE order_status = 'Shipped';

特定の列の値がNULLでない行をカウントする

特定の列の値がNULLでない行の数をカウントする例です。この場合、product_id列がNULLでない行を数えます。

SELECT COUNT(product_id)
FROM products
WHERE product_id IS NOT NULL;

まとめ

SQLのCOUNT関数は、データベース内の行数を数えるために非常に便利なツールです。データの集計、レポートの作成、クエリの結果のサマリー情報の生成など、さまざまな用途に利用できます。COUNT関数を使いこなすことで、データベースから必要な情報を正確に抽出できるようになります。これをマスターすれば、データベース管理のスキルが向上し、効率的なデータ操作が可能になるでしょう。