mysql - 如何让 MYSQL 在加入 self 时显示零结果? (例如 : Monthly Stats)

标签 mysql join self

我有一个表格,其中包含有关页面浏览量和电子邮件的典型统计信息。电子邮件创建一行,页面 View 创建一行...

我想绘制过去 30 天(例如)每天的页面浏览量和电子邮件图表,因此我需要显示日期和值……即使它为零。我的结果中不能缺少天数或图表中断。

PageViews Table:
UniqueID | PageID | DateTime

Emails Table:
UniqueID | SenderEmail | RecipientID | RecipientEmail | DateTime

我不需要这是一个查询,但问题对于任何一个查询都是一样的......如果有几天(或几小时,或几个月......取决于按范围分组)特定页面不存在查看它只是从结果数组中省略了。

同样,如果有几天有页面浏览量但现在有电子邮件,那么电子邮件计数查询就有漏洞......

本质上,我正在尝试创建一个 Google Analytics 类型的图表,并且需要在我的统计表中没有数据的日子里显示零的线条...

我认为某种左自连接可能会起作用,但似乎无法使其起作用。我什至弄乱了一个只有一列(值)和 1-31 行的整数表

你们中的任何一位 MYSQL 专家都可以提供帮助吗?

最佳答案

这个问题的标准解决方案是创建一个帮助表,并用与您预期的查询相关的所有日期填充它。

这是一个适用的 SO 问答:

How to fill date gaps in MySQL?

关于mysql - 如何让 MYSQL 在加入 self 时显示零结果? (例如 : Monthly Stats),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2713830/

相关文章:

mysql - Amchart 中的 MYSQL PDO JOIN 问题

PHP 查询不适用于变量

php codeigniter mysql 加入

python - python类中的属性

mysql - 如何计算MySQL中的相似兴趣

mysql - mysql如何获取每24小时的最后一条记录?

python - Django MySQL 无法获取我的数据库的最后状态

mysql - 如何使用内部联接使选择查询更高效

php - 在 JOIN 查询中获取共享参数

python - 将类实例引用传递给 Python 中类定义中调用的函数