問題

7
SQL

COUNT関数で検索結果の行数を得よう

COUNT関数は、検索結果の行数を数える集計関数です。 列を指定する方法と*(アスタリスク)を使って指定する方法があるのでそれぞれの違いを理解しておきましょう。

SQLの問題に挑戦しよう!

問題

COUNT関数で検索結果の行数を得よう

はじめに指定のコードを実行し、一部データを更新してください。

COUNT関数を使って家計簿テーブルの詳細の行数を求めましょう。
*(アスタリスク)で指定した場合の挙動も確認しておきましょう。

あらかじめエディタに書くコード

                    USE ninjacode;
UPDATE 家計簿 SET 詳細 = NULL WHERE 支出 = 400;
SELECT * FROM 家計簿;
¥SQL¥
                

期待する画面

解答の画像

解答と解説(COUNT関数で検索結果の行数を得よう)

解説

LINE登録して解答を見る

※ご登録後トークルーム下部にあるメニュー内
「無料問題集※解答付き」を押すと
解答閲覧用URLが届きます

単純に検索結果の行数を得る場合は、COUNT(*)という記述をすればOKです。
しかし、*(アスタリスク)で指定した場合は、NULLの行も含めて結果を返してしまいます。
対してCOUNT(列名)のようにして指定するとNULLが入っている行は無視してカウントしてくれます。

今回は「詳細の行数」という指定があるのでCOUNT(詳細)としましょう。

補足

SUMやAVGなどの各関数では「DISTINCT」を指定することによって
重複している値をのぞいた状態で集計が行なわれます。

重複データを除いて集計したい場合はCOUNT(DISTINCT 詳細)のようにして使用しましょう。

さらにスキルアップしたい方は公式LINEから「SQL」と送信すると動画が見れます。

LINE登録して動画を視聴する
あなたに合った学習プランは?LINE適正コース診断はこちら