Oracle 19c version个
不确定是否有可能编写一个查询来实现我所要求的,但不想在没有与专业人士核实的情况下排除这一可能性!
我试图在dbfiddle&;sqlfiddle中创建这个表&;data,但是遇到了错误.以下是 playbook .
create table xxtest (
person_number number,
full_name varchar2(100),
grade varchar2(10),
st_date date,
end_date date
);
insert into xxtest values (1,'John Doe','E02',to_date('2023-01-01','YYYY-MM-DD'),to_date('2023-01-23','YYYY-MM-DD'));
insert into xxtest values (1,'John Doe','E02',to_date('2023-01-30','YYYY-MM-DD'),to_date('2023-02-28','YYYY-MM-DD'));
insert into xxtest values (1,'John Doe','E02',to_date('2023-03-01','YYYY-MM-DD'),to_date('2023-03-12','YYYY-MM-DD'));
insert into xxtest values (1,'John Doe','E02',to_date('2023-03-15','YYYY-MM-DD'),to_date('2023-03-31','YYYY-MM-DD'));
insert into xxtest values (1,'John Doe','E02',to_date('2023-04-01','YYYY-MM-DD'),to_date('2023-12-31','YYYY-MM-DD'));
insert into xxtest values (1,'John Doe','N01',to_date('2023-01-24','YYYY-MM-DD'),to_date('2023-01-29','YYYY-MM-DD'));
select a.*, a.end_date-a.st_date days
from xxtest a;
因此,数据如下所示:
预期yields 如下所示.按人员、姓名和级别,如果日期没有中断,则应汇总这些行,并具有st_date和amp;end_date之间的天数之和.
我已经对上面的行进行了 colored颜色 编码,并显示为curl 在下面的图像.
一如既往,衷心感谢您的帮助!