【发布时间】:2021-07-12 04:26:10
【问题描述】:
我正在尝试获取过去 30 天的所有结果,当 count 为 0 时得到 0。
我的查询是:
SELECT substring(mc.publication_date, 1, 10) AS title, count(mc.id) AS quantity
FROM mymyv_cards mc
WHERE mc.publicated = 1 AND STR_TO_DATE(substring(mc.publication_date, 1, 10), "%d-%m-%Y") BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()
GROUP BY substring(mc.publication_date, 1, 10)
我明白了:
但我希望结果是这样的:
06-04-2021 --> 1
07-04-2021 --> 2
08-04-2021 --> 0
09-04-2021 --> 0
10-04-2021 --> 0
......................等等等等
我不知道该怎么做,你能帮我吗?
【问题讨论】:
-
你的 MySQL 是什么版本?如果是 8,则可以使用 CTE。
-
但考虑处理应用代码中数据显示的问题