Re: [SQL ] oracle sql 语法请教

楼主: rongkuo (small kuo)   2025-01-01 12:32:16
※ 引述《nzmprophet (nzmprophet)》之铭言:
: 数据库名称:Oracle
: 数据库版本:12c
: 内容/问题描述:如有一字段内容值为 :
: 1
: null
: null
: 5
: null
: null
: 8
: null
: null
: 请问该怎么下指令让这一栏的值可以变成
: 1
: 1
: 1
: 5
: 5
: 5
: 8
: 8
: 8
: 请各位大神们指点一二 谢谢
CREATE TABLE T
(
ID NUMBER,
N NUMBER
);
INSERT INTO T VALUES (1,1);
INSERT INTO T VALUES (2,NULL);
INSERT INTO T VALUES (3,NULL);
INSERT INTO T VALUES (4,5);
INSERT INTO T VALUES (5,NULL);
INSERT INTO T VALUES (6,NULL);
INSERT INTO T VALUES (7,8);
INSERT INTO T VALUES (8,NULL);
INSERT INTO T VALUES (9,NULL);
SELECT ID 序号
, SUM(N) OVER(PARTITION BY GRP) 结果
, DENSE_RANK() OVER(ORDER BY GRP) 分群
FROM ( SELECT ID
, N
, SUM(N) OVER(ORDER BY ID) GRP
FROM T)
ORDER BY ID;

Links booklink

Contact Us: admin [ a t ] ucptt.com