我有如下表
ID StartDate EndDate
1 15-MAR-2009 8-DEC-2011
2 14-JAN-2010 18-FEB-2013
我需要这样的输出 -
ID StartDate EndDate
1 15-MAR-2009 31-DEC-2009
1 1-JAN-2010 31-DEC-2010
1 1-JAN-2011 8-Dec-2011
2 14-JAN-2010 31-DEC-2010
2 1-JAN-2011 31-DEC-2011
2 1-JAN-2012 31-DEC-2012
2 1-JAN-2013 18-FEB-2013
我有 9i oracle 作为数据库,我更喜欢用 informatica 来做这件事,但似乎很难在那里找到解决方案,无法创建一个过程,所以需要 sql 查询。如果有人可以在 informatica 8.6 中提供,那就太好了。
编辑:-
Create table test_range
(Sr_No number,
start_date date,
end_date date)
create table yr_range
(years date);
插入语句:-
insert into test_range values (1,'15-MAR-2009','8-DEC-2011');
insert into test_range values (2,'14-JAN-2010','18-FEB-2013');
insert into yr_range values ('31-Dec-2005');
insert into yr_range values ('31-Dec-2006');
insert into yr_range values ('31-Dec-2007');
insert into yr_range values ('31-Dec-2008');
insert into yr_range values ('31-Dec-2009');
insert into yr_range values ('31-Dec-2010');
insert into yr_range values ('31-Dec-2011');
insert into yr_range values ('31-Dec-2012');
insert into yr_range values ('31-Dec-2013');
正如其中一个答案所建议的那样,我创建了另一个表来获得所需的输出,是否可以仅使用一个表(即 test_range)?我想在最终确定之前探索所有选项。