问题描述
如何让下面的查询从季度结束后的第一天检索结果
换句话说,第 1 季度的结果应包括 4 月 1 日及以后的记录,第 2 季度的结果应包括 7 月 1 日及以后的记录,依此类推
select year,quarter,uploaddate,wagecount,row_number()
OVER (partition by year,quarter
ORDER BY quarter,uploaddate) as Day_Number
from
(
select year,sum(wagecount) as wagecount from SAMPLE_DATA
group by year,uploaddate
)
order by year,uploaddate
我尝试了以下操作,但在运行查询时没有得到任何记录
select year,sum(wagecount) as wagecount from SAMPLE_DATA
where uploaddate > add_months(trunc(uploaddate,'Q'),3)-1
group by year,uploaddate;
样本数据如下:
CREATE TABLE SAMPLE_DATA (
YEAR VARCHAR2(4) NULL,QUARTER NUMBER(1,0) NULL,UPLOADDATE DATE NULL,WAGECOUNT NUMBER(10,0) NULL
);
Insert into SAMPLE_DATA (YEAR,QUARTER,UPLOADDATE,WAGECOUNT) values ('2019','1',to_date('27-MAR-19','DD-MON-RR'),5);
Insert into SAMPLE_DATA (YEAR,to_date('28-MAR-19',8493);
Insert into SAMPLE_DATA (YEAR,to_date('29-MAR-19',15070);
Insert into SAMPLE_DATA (YEAR,to_date('30-MAR-19',1244);
Insert into SAMPLE_DATA (YEAR,to_date('29-APR-19',13000);
Insert into SAMPLE_DATA (YEAR,to_date('30-APR-19',1024);
Insert into SAMPLE_DATA (YEAR,WAGECOUNT) values ('2020',to_date('03-JAN-20',0);
Insert into SAMPLE_DATA (YEAR,to_date('05-JAN-20',2);
Insert into SAMPLE_DATA (YEAR,to_date('06-JAN-20',3);
Insert into SAMPLE_DATA (YEAR,to_date('07-JAN-20',6);
Insert into SAMPLE_DATA (YEAR,WAGECOUNT) values ('2021','2',to_date('21-APR-21',59);
Insert into SAMPLE_DATA (YEAR,to_date('22-APR-21',10);
Insert into SAMPLE_DATA (YEAR,to_date('23-APR-21',16);
Insert into SAMPLE_DATA (YEAR,to_date('24-APR-21',1);
Insert into SAMPLE_DATA (YEAR,to_date('23-JUL-21',106);
Insert into SAMPLE_DATA (YEAR,to_date('24-JUL-21',41);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)