やりたいことは以下のとおりです。ジョブのログを管理するテーブルから、ジョブ名ごとに各ログレベル(CRITICAL, ERROR, WARN)のカウントを集計する方法をメモしておきます。
GROUP BYとCASEとSUMを使う
先にSQLを載せておきます。
まずは、GROUP BYでジョブ名ごとにグルーピングします。続いて、CASE式を使って各ログレベルが存在するかどうかの条件を設定し、SUMで各ログレベルの数をカウントしています。
まとめ
SQLでグループごとに条件を指定してカウントする方法でした。GROUP BYとCASEとSUMを使えばOKです。