【发布时间】:2018-11-13 07:42:59
【问题描述】:
我尝试为我的查询选择日期,但我也想在我的 sql 日期获得例如周日甚至没有周日。星期天为零。
这里是mysql
SELECT
DATE(log_date) DATE,
COUNT(users) active_users,
DATE_FORMAT(log_date,'%a') DAYNAME
FROM tbl_accounts
WHERE
DATE(log_date) BETWEEN DATE(:now) - INTERVAL 1 WEEK AND DATE(:now)
GROUP BY DATE(log_date);
我会发生什么是选择周一到周日即使没有周日我仍然想选择周一,如果为空它会显示零值?有可能吗?
我希望这个输出变成周一到周日,如果没有周日,周日将显示为零。
【问题讨论】:
-
我认为样本数据和期望的结果会很有帮助。
-
这里的一个选项是将日历表左连接到您当前的查询。这将包括出现在日历表中的任何日期。
-
所以我应该有日历表?
-
所以这很简单,您需要为一周中的每一天进行选择并将它们插入到临时表中,然后查询临时表。
-
提供的示例输出