mysql - 如何使用 sql 和按日期分组显示指标随日期的累积增长?

标签 mysql sql sql-server amazon-redshift

我想显示某一日期内指标的累积增长,同时还按日期进行分组,以便该日期仅在表中出现一次

我有以下数据集:

data = [{'date':'2016-01-01','value':'1'},{'date':'2016-01-01','value':'3'},{'date':'2016-01-02','value':'3'},{'date':'2016-01-02','value':'2'}]

以下查询生成下表:

select 
date, 
sum(value) over (order by date rows unbounded preceding) as value
from data
group by 
date, 
value

下面是我的表格

date        value       
2016-01-01  1   
2016-01-01  4
2016-01-02  7    
2016-01-02  9

但是,我想生成下表:

date        value       
2016-01-01  4   
2016-01-02  9

当我尝试以下查询并且不按值分组时,出现以下错误:

select 
date, 
sum(value) over (order by date rows unbounded preceding) as value
from data
group by 
date

错误:

column "value" must appear in the GROUP BY clause or be used in an aggregate function

最佳答案

也许可以在计算运行总计之前按日期对值进行求和?

select date, 
    sum(value) over (order by date) as value
from (
    select date, sum(value) as value
    from data
    group by date
) t

关于mysql - 如何使用 sql 和按日期分组显示指标随日期的累积增长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39985213/

相关文章:

sql - 如何根据电话号码找到长途费率的最佳匹配?

mysql - 如何根据这个表设计向一个人的 friend 展示我的数据库设计是否正确?

sql - 如何自动将 1 年日期添加到 SQL Server 中的现有日期

php - 如何在 sugarcrm 社区版 6.5.14 中启用全文搜索 (FTS)?

mysql - Laravel - 违反完整性约束 : 1452 Cannot add or update a child row

php - SQLSTATE[HY000] [2003] 无法连接到 'XXX.XXX.XXX.XXX' (60) 上的 MySQL 服务器

mysql - SQL:通过SQL-Query获取电表每天/每周/每月的消耗量

mysql - sql 中 where 子句中 url 的一部分

sql-server - SQL Server 2008R2 从表到图的边

python - pymysql无法链接到mysql