MySQL での SUM と COUNT による条件付き集計
リレーショナル データベースを使用する場合、多くの場合、データに基づいて集計するために条件付き集計を実行する必要があります。特定の基準で。 MySQL では、IF() ステートメントや CASE ステートメントの使用など、これを実現するいくつかの方法が提供されています。
IF() ステートメントの使用
この例では、次のように試みました。 IF() ステートメントを使用して、種類が 1 に等しい行数を計算します。ただし、MySQL では、集計関数での IF() ステートメントの使用は許可されていません。 SUM や COUNT など。これは、IF() がスカラー値を返すのに対し、集計関数は入力として列式を必要とするためです。
CASE ステートメントの使用
条件付き集計を実行するには、次のことができます。 CASE ステートメントを使用します。 CASE ステートメントを使用すると、複数の条件を指定し、それらの条件に基づいて異なる値を返すことができます。
次のクエリでは、CASE ステートメントを使用して、種類が 1 に等しい行数を計算します。
SELECT COUNT(id), SUM(hour) AS totHour, SUM(CASE WHEN kind = 1 THEN 1 ELSE 0 END) AS countKindOne FROM your_table;
このクエリ内:
以上がMySQL で SUM と COUNT を使用して条件付き集計を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。