こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、10年目エンジニアです。
この記事では、 SQL Serverでテーブルのレコード数を数えることができるCOUNT関数について
- COUNT関数とは
- COUNT関数を使ったサンプルSQL
と、丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
使っているSQL Serverの製品 | SQL Server2019 |
SQL Serverのバージョン | 15.0.2000 |
SQL Server Management Studioのバージョン | 15.0.18386.0 |
SQL Server Management Studioの言語 | 日本語 |
COUNT関数とは
COUNT関数とは、テーブルの指定した項目のレコード数を返す関数です。
COUNT関数の使い方は以下になります。
1 2 |
SELECT COUNT(【カラム名or*(アスタリスク)】) FROM 【テーブル名】 |
実行すると
とそのテーブルのレコード数を返します。
上記のサンプルのように、ヘッダーは「(列名なし)」というカラムになります。
COUNT関数のヘッダーに名前を指定したい場合はAS句を使えばOKです。
AS句については、こちらの記事をご参考ください。
COUNT関数の引数には
- *(アスタリスク)
- カラム名
を指定できます。
違いは
*(アスタリスク) | テーブルのレコード数 |
---|---|
カラム名 | 指定したカラムの値がNULL以外のレコード数 |
です。
用途によってCOUNT関数に指定する引数にお気を付けください。
では、次の章で実際に使ってみます。
COUNT関数を使ったサンプルSQL
以下のuserテーブルで
- *(アスタリスク)
- jobカラム
でCOUNT関数を使い、結果何が返されるのかを確認します。
id | name | age | job |
---|---|---|---|
A001 | 田中 | 16 | 1 |
A002 | 鈴木 | 43 | 2 |
A003 | 佐藤 | 22 | 2 |
A004 | 木下 | 17 | 1 |
A005 | 森 | 36 | NULL |
A006 | 四月一日 | 3 | NULL |
SQLは以下になります。
1 2 |
SELECT COUNT(*) AS asterisk_count, COUNT(job) AS job_count FROM [user] |
実行すると、指定した引数によってそれぞれレコード数が取得できていることを確認できました。
まとめ:COUNT関数でレコード数を取得してみよう!
以上がSQL Serverでテーブルのレコード数を取得できるCOUNT関数についての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント