散分:一个特简单查询SQL的几种写法

阿三 阿三 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
CREATE TABLE mytable(ID INT,VALUE NUMBER(6));
INSERT INTO mytable VALUES(1,10);
INSERT INTO mytable VALUES(2,20);
INSERT INTO mytable VALUES(3,15);

1 10
2 20
3 15

结果:
1 10 10
3 15 45
2 20 40


你会几种?

CREATE TABLE mytable(ID INT,VALUE NUMBER(6));
INSERT INTO mytable VALUES(1,10);
INSERT INTO mytable VALUES(2,20);
INSERT INTO mytable VALUES(3,15);

SELECT * FROM mytable;

SELECT a.id,a.value,SUM(nvl(a."VALUE",0))
FROM mytable A
JOIN mytable b ON b.id<=a.id
GROUP BY a.id,a.value

SELECT ID,VALUE,SUM(VALUE) OVER(ORDER BY ID) FROM mytable;

SELECT ID,value+LAG(VALUE,1,0) OVER(ORDER BY ID) FROM mytable
...全文

相关推荐

评论 2
收藏 已收藏
分享
返回顶部
阿三
基础和管理 17,379 成员 95,111 内容