ホームページ > データベース > mysql チュートリアル > SQL COUNT 集計にゼロアポイントの結果を含めるにはどうすればよいですか?

SQL COUNT 集計にゼロアポイントの結果を含めるにはどうすればよいですか?

DDD
リリース: 2025-01-08 18:26:42
オリジナル
920 人が閲覧しました

How Can I Include Zero-Appointment Results in SQL COUNT Aggregations?

SQL 集計でのゼロ予約カウントの処理

標準 SQL COUNT 集計では、予約がゼロの個人を見逃す可能性があります。 解決策には、外部結合を使用してこれらのゼロカウントエントリを含めることが含まれます。

説明して​​みましょう:

このクエリは、個人ごとの予定をカウントしますが、予定のないものは除外します。

<code class="language-sql">SELECT person_id, COUNT(person_id) AS appointment_count
FROM appointment
GROUP BY person_id;</code>
ログイン後にコピー

予定がゼロの個人を含めるには、LEFT JOIN テーブルを駆動テーブルとして person を使用します。

<code class="language-sql">SELECT p.person_id, COUNT(a.person_id) AS appointment_count
FROM person p
LEFT JOIN appointment a ON p.person_id = a.person_id
GROUP BY p.person_id;</code>
ログイン後にコピー

この LEFT JOIN は、予定が存在しない NULL に対して appointment.person_id を返します。 COUNTNULL 値を無視し、それらの個人の予定がゼロであることを正しく報告します。

このアプローチは、外部結合がどのように機能するかを理解することに依存しています。 LEFT JOIN は、右側のテーブル (person) に一致する行がない場合でも、左側のテーブル (この場合は appointment) のすべての行が確実に含まれるようにします。

外部結合と NULL 値の処理について詳しくは、次のようなリソースを参照してください。

SQLZoo: NULL の操作

以上がSQL COUNT 集計にゼロアポイントの結果を含めるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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