首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL / Django查看值的条件累积和

SQL / Django查看值的条件累积和
EN

Stack Overflow用户
提问于 2021-12-28 11:00:01
回答 1查看 73关注 0票数 3

对于SQL和Django非常陌生,如果B列(string)中的值不同,我将尝试创建一个查询,以累积A列(整数)的值。这一累计应根据日期(C栏)进行。

以下是数据:

代码语言:javascript
复制
Column A Column B Column C 
2.0      Rock     2020-08-08
3.0      Paper    2020-09-08
25.0     Rock     2021-09-09
12.0     Rock     2021-10-10
5.0      Paper    2021-11-11

根据这些数据,我希望有第三列D,它将表示以下累积值:

代码语言:javascript
复制
Column A    Column B Column C    Column D
2.0         Rock     2020-08-08  2.0
3.0         Paper    2020-09-08  5.0
25.0        Rock     2021-09-09  28.0
12.0        Rock     2021-10-10  15.0
5.0         Paper    2021-11-11  17.0
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-28 12:00:39

如果需要查询,可以使用自联接和FIRST_VALUE()窗口函数进行查询:

代码语言:javascript
复制
SELECT DISTINCT t1.*, 
       t1.ColumnA + COALESCE(FIRST_VALUE(t2.ColumnA) OVER (PARTITION BY t1.ColumnC ORDER BY t2.ColumnC DESC), 0) ColumnD
FROM tablename t1 LEFT JOIN tablename t2
ON t2.ColumnC < t1.ColumnC AND t2.ColumnB <> t1.ColumnB
ORDER BY t1.ColumnC;

演示

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70506089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档