データ処理では、特定の条件を満たすレコードの数をカウントする必要があることがよくあります。 Microsoft SQL Server などのデータベースでは、COUNT 集計関数はすべてのレコードをカウントする基本的な方法を提供しますが、特定の値に基づいてフィルタリングする柔軟性がありません。この問題を解決するには、SUM ステートメントと CASE ステートメントを組み合わせたソリューションを検討してください。
次の例は、この手法の使用方法を示しています。
<code class="language-sql">SELECT SUM(CASE WHEN myColumn = 1 THEN 1 ELSE 0 END) FROM AD_CurrentView;</code>
このクエリでは、SUM 関数を使用して、「myColumn」列の値が 1 に等しい行の数をカウントします。このアプローチでは、指定された基準に基づいてカウントを効果的にフィルタリングし、望ましい結果を取得します。
一部の環境では NULL 値に特別な考慮が必要な場合があることに注意してください。この場合、以下の変更されたクエリに示すように、ISNULL 関数の組み合わせを使用して適切に処理できます。
<code class="language-sql">SELECT SUM(CASE WHEN ISNULL(myColumn, 0) = 1 THEN 1 ELSE 0 END) FROM AD_CurrentView;</code>
以上が集計関数を使用して SQL Server で COUNTIF 機能を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。