首页 > 解决方案 > 选择两列不等于 0 的计数

问题描述

我有一张如下表:

|----------------|-------------|-------------|
|      a_id      |     m_id    |   e_id      |
|----------------|-------------|-------------|
|       1        |       1     |      0      |
|       2        |       2     |      2      |
|       3        |       3     |      3      |
|       4        |       1     |      1      |
|       5        |       4     |      4      |
|----------------|-------------|-------------|

我需要一个查询来执行a_id应该具有m_ide_id不等于 0 的任务。

因此,我编写了返回计数 5 的查询如下:

SELECT count(a_id) from ids where (e_id!=0 or m_id!=0)

我需要a_id有不同的m_id != 0. 那应该返回计数 4。

标签: mysqlsql

解决方案


利用count(distinct

select count(distinct m_id) from ids where e_id!=0 or m_id!=0

推荐阅读