gpt4 book ai didi

mysql - 获取 GROUP BY 的 "filler"空值

转载 作者:行者123 更新时间:2023-11-29 16:30:16 25 4
gpt4 key购买 nike

假设我想从某个日期范围获取“每周”结果,并且该日期范围包含四个单独的周,但我的数据库只有一周的记录,如何获取剩余三周的填充值?

例如,给定以下日期范围:6/2018 - 7/2018

我运行此查询:

SELECT
DATE_FORMAT(period, '%m %d') || ' - ' || DATE_FORMAT(period, '%m %d') AS period,
SUM(clicks) AS clicks
FROM tablename
WHERE period >= ? AND period <= ?
GROUP BY YEAR(period), WEEK(period)

数据库中的这些表行:

|         period          | clicks |
| 07/01/2018T:00:00:00Z | 1000 |

我得到这些查询结果:

|     period      | clicks |
| Jul 1 - Jul 5 | 1000 |

但我希望这些查询结果能够覆盖空周的默认值,以便我可以使用它们来填充 d3 图表:

|     period      | clicks |
| Jul 1 - Jul 5 | 1000 |
| Jun 25 - Jun 23 | 0 |
| Jun 18 - Jun 24 | 0 |
| Jun 12 - Jun 18 | 0 |

有什么想法吗?这种“填充”现象应该足够通用,可以与其他时间间隔一起使用,例如每天、每月、每年、每小时。

最佳答案

将您的查询重写为

ifnull( SUM(clicks),0) AS clicks

关于mysql - 获取 GROUP BY 的 "filler"空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53987394/

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