根据MySQL中的过滤器检索每个id的计数



也许这个问题是微不足道的,但我想不出来!
我有一个这样的表:

+----+-------+-------+
| ID | Val_1 | Val_2 |
+----+-------+-------+
| 1  |   0   |   1   |
| 2  |   0   |   0   |
| 3  |   1   |   0   |
| 1  |   0   |   1   |
| 2  |   1   |   0   |
| 4  |   0   |   0   |

ID字段不是唯一的(我在表中有另一个键)。我想检索的是每个ID的计数,其中((Val_1> 0)或(Val_> 0)):

+----+-------+
| ID | count |
+----+-------+
| 1  |   2   |
| 2  |   1   |
| 3  |   1   |
| 4  |   0   |

有什么建议吗?

select id, 
       sum(Val_1 > 0 OR Val_ > 0) as count
from your_table
group by id

最新更新