MySql: is it possible to 'SUM IF' or to 'COUNT IF'?

mysql

Solution

You can use a `CASE` statement:

SELECT count(id), 
    SUM(hour) as totHour, 
    SUM(case when kind = 1 then 1 else 0 end) as countKindOne

Problem

I have a column 'hour' I have a column 'kind' (it can be 1,2 or 3) I'd like to do something like: ``` SELECT count(id), SUM(hour) as totHour, SUM( IF ( kind = 1, 1, 0 ) ) as countKindOne ``` or ``` SELECT count(id), SUM(hour) as totHour, COUNT( IF ( kind = 1 ) ) as countKindOne ``` But mysql tell me I've an error... what's the error!? Please see this stackoverflow topic: MySQL SUM IF field b = field a .. I'm not able to reply this ...

Original source

Related problems