我有一个如下所述的表:
|----------------|-------------|-------------|
| a_id | m_id | e_id |
|----------------|-------------|-------------|
| 1 | 1 | 0 |
| 2 | 2 | 2 |
| 3 | 3 | 3 |
| 4 | 1 | 1 |
| 5 | 4 | 4 |
|----------------|-------------|-------------|
我需要一个执行
a_id
应该具有m_id
或e_id
不等于0的任务的查询。因此,我编写了如下查询,该查询返回计数5:
SELECT count(a_id) from ids where (e_id!=0 or m_id!=0)
我需要
a_id
应该具有不同的m_id != 0
。那应该返回计数4。 最佳答案
使用count(distinct
select count(distinct m_id) from ids where e_id!=0 or m_id!=0