mysql - 如果没有找到记录,则计数返回 0
问题描述
我有一组表格来保存注册的日常信息。现在我需要在 MySQL 中包含按当前日期的总记录的查询。我做了一个工作正常的查询,但我希望在未注册任何记录的计算机上为 0(零)。这里它不返回 0。
我尝试了 IFNULL () 和 COALESCE () 但我仍然得到相同的结果。请帮助解决这个问题。谢谢.......
SELECT e.Equipo, COUNT(ec.ID_Equipo_Detalle) as captura
FROM equipos as e
LEFT JOIN equipos_detalle as eq
ON e.ID_Equipo = eq.ID_Equipo
LEFT JOIN elecciones_contactos as ec
on ec.ID_Equipo_Detalle = eq.ID_Equipos_Detalle
WHERE ec.FechaAlta BETWEEN CURRENT_DATE and CURRENT_DATE + 1
GROUP by ec.ID_Equipo_Detalle
ID_Equipos | Equipos |
---|---|
1 | 第一区 |
2 | 区域 2 |
3 | 区域 3 |
4 | 4区 |
5 | 5区 |
6 | 6区 |
7 | 7区 |
8 | 8区 |
ID_Equipos_Detelle | ID_Equipos | ID_Responsable |
---|---|---|
1 | 1 | 152 |
2 | 2 | 158 |
3 | 3 | 156 |
4 | 4 | 156 |
5 | 5 | 176 |
6 | 6 | 178 |
7 | 7 | 167 |
8 | 8 | 172 |
ID_联系人 | ID_Equipos_Detelle | 联系方式 | Fecha_Alta |
---|---|---|---|
1 | 1 | 乔治 | 2021-04-26 12:20:27 |
2 | 2 | 佩德罗 | 2021-04-26 11:30:25 |
3 | 3 | 费尔南多 | 2021-04-26 11:20:23 |
4 | 4 | 费利佩 | 2021-04-26 10:22:27 |
5 | 5 | 路易斯 | 2021-04-25 10:22:27 |
6 | 6 | 亚历克西斯 | 2021-04-25 10:12:30 |
7 | 7 | 胜利者 | 2021-04-24 09:22:28 |
8 | 8 | 塞萨尔 | 2021-04-24 09:15:27 |
得到结果:
Equipos | 捕获 |
---|---|
第一区 | 1 |
区域 2 | 2 |
5区 | 1 |
预期结果(日期为 2021 - 04 - 26):
Equipos | 捕获 |
---|---|
第一区 | 1 |
区域 2 | 2 |
区域 3 | 0 |
4区 | 0 |
5区 | 1 |
6区 | 0 |
7区 | 0 |
8区 | 0 |
解决方案
您的 WHERE 正在丢弃行,您需要使用子查询:
SELECT e.Equipo, COUNT(ec.ID_Equipo_Detalle) AS captura
FROM equipos AS e
LEFT JOIN equipos_detalle AS eq ON e.ID_Equipo = eq.ID_Equipo
LEFT JOIN (SELECT * FROM elecciones_contactos WHERE FechaAlta BETWEEN CURRENT_DATE and CURRENT_DATE + INTERVAL 1 DAY) AS ec ON ec.ID_Equipo_Detalle = eq.ID_Equipos_Detalle
GROUP by ec.ID_Equipo_Detalle
查询中的某些列名与表中的不匹配(查询中的 ID_Equipo 是表中的 ID_Equipos)。
推荐阅读
- r - 如何防止 ifelse 语句清除以前的数据?
- django - 为什么在 Django 中使用 RadioSelect 表单时无法获得单选按钮?
- java - 未调用 JAXB ValidationEventHandler 的 handleEvent 方法
- r - 错误:“项目必须至少有两个有效的响应类别,包含 5 个或更多案例。” 当我已经有 2 个类别时
- python - 如何将列标题正确添加到 WTForms 动态选择字段列表中
- linux - 如何对 64 位汇编中的列求和?
- excel - 基于匹配空格分隔列表的条件的求和
- statistics - 线性方程组中的非线性约束
- angular - Angular Typescript循环遍历对象数组以查找计数
- javascript - 如何为 p5.js 游戏创建“You Won”屏幕?