sql SELECT SUM(CASE WHEN flag = 1 THEN 1 ELSE 0 END) FROM table 件数を集計したい場合 SELECT api_path ,sum(case when status_code = 200 then 1 else 0 end) as success ,sum(case when status_code = 500 then 1 else 0 end) as error FROM access_log GROUP BY api_path ORDER BY api_path 条件に応じてカラムを集計したい場合 CREATE TABLE `売上` ( `id` int NOT NULL AUTO_INCREMENT, `プロジェクトID` varchar(3) NOT NULL, `計上年月日` date NOT NULL, `金額` decimal(11,2) NOT NULL, PRIMARY KEY(`id`) ); SELECT `プロジェクトID`, SUM(`金額`) AS `売上額`, SUM(CASE WHEN `計上年月日` > '2020-07-20' THEN `金額` ELSE 0 END) AS `売上残` FROM `売上予定` GROUP BY `プロジェクトID`; 結果 プロジェクトID 売上額 売上残 001 600000.00 200000.00 002 100000.00 0.00