gpt4 book ai didi

MySQL GROUP BY date - 没有行时如何返回结果

转载 作者:可可西里 更新时间:2023-11-01 06:33:21 25 4
gpt4 key购买 nike

我正在编写一个查询,以返回特定时间段内每天撰写的博文数量。当某一天没有博客记录时,我的问题就出现了。对于我的查询,当天的结果完全被跳过了。

这是我的查询:

SELECT DATE(`posted`), COUNT(`id`) 
FROM `blogs` WHERE `status` = 'active'
&& `posted` BETWEEN `2011-01-01` AND `2011-05-01`
GROUP BY DATE(`posted`)

它返回类似于:

count | date
_________________
2 | 2011-01-01
5 | 2011-01-02
1 | 2011-01-04

请注意它缺少 2011-01-03,因为它没有任何帖子。

如何让它显示那些有 0 个帖子的日子?

最佳答案

您需要有一个包含您要查询的所有日期的表,并按照...

SELECT DATE(D.`thedate`), COUNT(`id`)
FROM `datetable` D
LEFT JOIN `blogs` B
ON B.`posted` = D.`thedate`
WHERE `status` = 'active'
&& D.`thedate` BETWEEN `2011-01-01` AND `2011-05-01`
GROUP BY DATE(D.`thedate`)

关于MySQL GROUP BY date - 没有行时如何返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5988179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com