我有一个跟踪已发送电子邮件的表格。这很简单。
身份证 | 日期时间 | 电子邮件 | 主题 | 信息
几年来我一直在收集数据。有些日子我在表中没有任何条目。
查询1:
SELECT COUNT(ID) FROM emails
WHERE DATE(datetime) >= 'XXXX-XX-XX'
AND DATE(datetime) is <= 'ZZZZ-ZZ-ZZ'
GROUP BY DATE(datetime)
然后我使用一些 php 提前一年获取 XXXX 和 YYYY 并运行与第一个相同的第二个查询......
查询2:
SELECT COUNT(ID) from emails
WHERE DATE(datetime) >= 'XXXX-XX-XX'
AND DATE(datetime) is <= 'ZZZZ-ZZ-ZZ'
GROUP BY DATE(datetime)
我正在使用图表包来比较我在某个日期范围内收到了多少封电子邮件,然后我叠加了一年前在同一范围内收到多少封电子邮件。这是现在的两个查询,我将结果绘制成图表。
问题是 mysql 在 2011 年的某一天没有任何电子邮件,但在 2012 年的同一天有几封电子邮件。
组合结果并将它们绘制成图表会使结果产生偏差,因为我错过了那一天的去年日期和 0 值,有效地使我的所有值不再匹配。
2011-03-01 10 2012-03-01 4
2011-03-02 4 2012-03-02 2
2011-03-03 6 2012-03-04 1 <---- see where the two queries
end up diverging? (I had nothing
logged for 2012-03-03 so naturally
it was not in the results.
有没有一种方法可以让 mysql 输出我需要的数据,包括值出现在一年中但不是另一个的日期,或者如果任何一年都没有出现值(仍然需要日期和 0)所以我的图表有效?
我似乎无法弄清楚如何做到这一点......
谢谢!