mysql - 选择两列不等于 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_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
推荐阅读
- css - 未显示的按钮轮廓
- comments - 在 pycharm 中评论
- netsuite - 在 SuiteScript 2.0 中使用外部“表”库
- module - 如何在 Prestashop 的类别页面上的产品名称旁边创建链接/按钮“更多信息”?(这应该重定向到产品页面)
- reactjs - 如何等待 useReducer 调度更新状态?
- java - 从 byte[] 识别分页符
- angularjs - AngularJS如何为每个页面动态添加角度面包屑?
- vue.js - 如何使用 typescript 在 vue3 中手动定义 props 类型
- html - 如何从标签中删除下载选项
- python - AttributeError:“图像”对象没有属性“getvalue”(PIL)