sql >> データベース >  >> RDS >> Mysql

mysqlでの合計行数のカウントと列によるグループ化

    まず、計算された列を取得するためにgroupbyが必要です

     SELECT Customer, COUNT(*) as total_count, SUM(duration) as total_duration
     FROM yourTable
     GROUP BY  Customer
    

    および

     SELECT Customer, Error, COUNT(*) as error_count
     FROM yourTable
     GROUP BY  Customer, Error
    

    次に、テーブルに戻って参加します

    SELECT t1.Customer, 
           t2.total_count, 
           t1.error, 
           t3.error_count, 
           t2.total_duration
    FROM yourTable as t1
    JOIN (
         SELECT Customer, COUNT(*) as total_count, SUM(duration) as total_duration
         FROM yourTable
         GROUP BY  Customer
         ) as t2
      ON t1.Customer = t2.Customer
    JOIN (
         SELECT Customer, Error, COUNT(*) as error_count
         FROM yourTable
         GROUP BY  Customer, Error
    ) as t3
     ON t1.Customer = t3.Customer
    AND t1.Error = t3.Error
    GROUP BY t1.Customer
           , t1.Error
    


    1. mysql:2つの日時の間のレコード数を取得します

    2. Oracleが表示する理由??? åäöのような特殊文字の場合

    3. Javaでユーザー定義型を含むOracleストアドプロシージャを呼び出す方法は?

    4. 意図しない副作用–ロックを保持している睡眠セッション