MySQL: 'SUM IF' および 'COUNT IF' による条件付き集計
SUM や COUNT などの集計関数は、データを要約するために不可欠です。 MySQL。ただし、集計に条件を適用する必要がある場合はどうすればよいでしょうか?ここで、条件付き集計が登場します。
「hour」と「kind」の 2 つの列を持つテーブルがあるシナリオを考えてみましょう。対応する 'kind' 値が 1 かどうかに基づいて 'hour' 値を数えて合計したいとします。従来の集計関数だけではこれを処理できません。
この問題を解決するために、MySQL は CASE ステートメントを提供しています。集計のカスタム条件を定義します。 CASE ステートメントを使用して修正されたクエリを次に示します。
SELECT count(id), SUM(hour) as totHour, SUM(case when kind = 1 then 1 else 0 end) as countKindOne
このクエリでは、CASE ステートメントは 'kind' 値が 1 に等しいかどうかをチェックします。true の場合は 1 を返し、true の場合は 1 を返します。それ以外の場合は、0 を返します。その後、結果は SUM() 関数を使用して合計され、1 に等しい 'kind' の出現数がカウントされます。
CASE ステートメントで条件付き集計を使用すると、効果的にフィルターと集計を行うことができます。特定の基準に基づいてデータを分析します。この強力な手法により、MySQL でのデータ分析と操作の幅広い可能性が開かれます。
以上がMySQL で条件付き集計を使用して、特定の基準に基づいて値をカウントおよび合計するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。