I have a database MySQL table as following
Id | Column1 | Column2 | Column3 |
---|---|---|---|
First | value1 | value1 | value2 |
Second | value2 | value1 | value2 |
I want to retrieve the count of value1 for the row with id First example table as follows
Id | COUNT(value1) |
---|---|
First | 2 |
I searched on google but found posts only regarding counting in one specific column. Can anyone help me with the SQL query for retrieving the above type.
Advertisement
Answer
Use a case
expression to determine for each column whether to count it or not e.g.
select case when Column1 = 'value1' then 1 else 0 end + case when Column2 = 'value1' then 1 else 0 end -- ... from MyTable where id = 'first'