【发布时间】:2020-09-08 16:18:34
【问题描述】:
以下代码将一个充满日期的表与一个在“X”日期有注册表的表连接起来。
SELECT
d.date as 'fecha',
IFNULL(q.name,0) as 'nombre'
FROM dates d
LEFT JOIN quarantine_registry q
ON d.date = q.change_date where d.date <= CURDATE() order by d.date desc
输出类似于:
fecha - nombre
2020-09-08 - 0
2020-09-07 - ggg
2020-09-07 - dwdw
2020-09-07 - test
2020-09-07 - Uuu
2020-09-07 - aaaacdac
2020-09-07 - asaaws
2020-09-07 - dwdwdw
2020-09-07 - vsed
2020-09-07 - ppp
2020-09-07 - test
2020-09-07 - Ygg
2020-09-07 - Cc
2020-09-07 - 0
...
我忘了:我只想加入quarantine_registry中change_type = 'add'的注册表
如何计算每个日期拥有的注册表数量并按日期分组?
感谢您的宝贵时间
【问题讨论】:
-
加入后使用
GROUP BY和COUNT(),就像你在标题中说的那样。 -
我忘了:我只想加入quarantine_registry中change_type = 'add'的注册表
-
将其添加到
ON条件:ON d.date = q.change_date AND q.change_type = 'add'
标签: mysql sql datetime count left-join