データ集計(行数)
全体の行数を集計する
集計関数COUNTを使用することで、行数を取得することが可能です。
SELECT COUNT(*) FROM テーブル1;
それではサンプルを見てみましょう。
以下のようなteamテーブルがあります。
emp_no | name | dept |
---|---|---|
A00001 | 荒木 太郎 | A課 |
A00002 | 井端 次郎 | A課 |
A00003 | 森野 三郎 | B課 |
A00004 | null | null |
テーブルの行数を取得するSQLです。
1 |
SELECT COUNT(*) FROM team; |
上記を実行し、抽出された結果がこちらです。
COUNT(*) |
---|
4 |
teamテーブルの行数が集計されました。
列の行数を集計する
行を指定する場合は、NULL値の行を除いて集計されるため注意が必要です。
SELECT COUNT(列1) FROM テーブル1;
それではサンプルを見てみましょう。
以下のようなteamテーブルがあります。
emp_no | name | dept |
---|---|---|
A00001 | 荒木 太郎 | A課 |
A00002 | 井端 次郎 | A課 |
A00003 | 森野 三郎 | B課 |
A00004 | null | null |
dept列の行数を取得するSQLです。
1 |
SELECT COUNT(dept) FROM team; |
上記を実行し、抽出された結果がこちらです。
COUNT(dept) |
---|
3 |
dept列の行数が集計されました。NULL行がカウントされていないのがわかります。
列のデータごとに行数を集計する
GROUP BY句を使用することで、列を指定してグループ化して集計することが可能です。
[Oracle] データ集計 基本SQL(GROUP BY)データ集計(基本形)
検索結果を集計する
GROUP BY句を使用することで、SELECT句で取得した結果をグループ化して集計するこ...
SELECT 集計キー1, COUNT(列1) FROM テーブル1
GROUP BY 集計キー1;
それではサンプルを見てみましょう。
以下のようなteamテーブルがあります。
emp_no | name | dept |
---|---|---|
A00001 | 荒木 太郎 | A課 |
A00002 | 井端 次郎 | A課 |
A00003 | 森野 三郎 | B課 |
A00004 | null | null |
dept列でグループ化し、行数を取得するSQLです。
1 2 3 |
SELECT dept, COUNT(dept) FROM team GROUP BY dept ORDER BY dept; |
上記を実行し、抽出された結果がこちらです。
dept | COUNT(dept) |
---|---|
A課 | 2 |
B課 | 1 |
dept列がグループ化され、行数が集計されました。
以上が、列の行数を取得する集計関数「COUNT」の使い方です。
ぜひ参考にしてみてください。