SQL每日一题(20231204)

2024-04-24 17:24:36 浏览数 (2)

题目

有如下一张表G1204

希望得到如下结果:

该如何写这个SQL?

解释:同一个CODE组,DATE从小到大排序,需要实现每个日期到下一个日期作为结束日期,例如:CODE为1001组,第一个日期是2021-01-01,第二个日期是2021-03-02,那么第一个日期2021-01-01的结束日期就是2021-03-02,以此类推,如果是最后一个日期,那么结束日期默认为:9999-12-31

测试数据

代码语言:javascript复制
CREATE TABLE G1204
(
CODE INT,
INVTP VARCHAR(10),
DATE DATE
)

INSERT INTO G1204 VALUES (1001,'A','2021/1/1');
INSERT INTO G1204 VALUES (1001,'B','2021/3/2');
INSERT INTO G1204 VALUES (1001,'C','2021/4/1');
INSERT INTO G1204 VALUES (1002,'AA','2021/1/1');
INSERT INTO G1204 VALUES (1002,'BB','2021/2/28');
INSERT INTO G1204 VALUES (1003,'CC','2021/1/1');

参考答案

0 人点赞