ホームページ > データベース > mysql チュートリアル > MySQL COUNT() で Null 値を含む行に対してゼロカウントを表示するにはどうすればよいですか?

MySQL COUNT() で Null 値を含む行に対してゼロカウントを表示するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-05 03:02:12
オリジナル
242 人が閲覧しました

How Can I Display Zero Counts in MySQL COUNT() for Rows with Null Values?

MySQL COUNT でのゼロカウントの表示

MySQL で COUNT() 関数を使用して値をカウントする場合、多くの場合、NULL 値を含む行が除外されます。これにより、他のテーブルに対応する値がない行も含め、すべての行のカウントを表示しようとすると問題が発生する可能性があります。

問題への対処

この問題に対処するには、次のようにします。 COUNT() 関数と組み合わせて外部結合を使用できます。次のクエリでは、LEFT JOIN を利用して、mailingSubscriptions テーブルに対応するエントリがあるかどうかに関係なく、Employee テーブルのすべての行を含めます。

SELECT c.name, count(m.mailid)
FROM Employee
   LEFT JOIN mailingSubscriptions as m ON c.Name = m.EmployeeName
GROUP BY c.name;
ログイン後にコピー

説明

  • LEFT JOIN は、Employee テーブルの行と mailingSubscriptions の一致する行を結合します。 table.
  • count(m.mailid) 式は、mailid 列内の null 以外の値の数をカウントします。
  • GROUP BY c.name 句は、従業員の名前ごとに結果を集計します。それぞれのサブスクリプション数を提供しますemployee.

Result

このクエリは、Name と Subscription Count の 2 つの列を含むテーブルを返します。 [サブスクリプション数] 列には、各従業員のサブスクリプション数が表示されます。サブスクリプションがない従業員の場合は 0 が表示されます。

以上がMySQL COUNT() で Null 値を含む行に対してゼロカウントを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート