如何从oracle的weekend表中查找weekend-between日期范围?

0md85ypi  于 2021-07-24  发布在  Java
关注(0)|答案(0)|浏览(161)

这个问题在这里已经有答案了

如何在oraclesql中生成两个日期之间的所有星期日日期(3个答案)
在oracle sql中计算工作日(无函数或过程)(12个答案)
在oracle中计算两个日期之间的工作日(2个答案)
用java计算两个日期之间的工作日数(20个答案)
三个月前关门了。
这是我的oracle表:

CREATE TABLE HR_LK_WEEKEND
(
  COMPCODE  VARCHAR2(3 BYTE)                    NOT NULL,
  STRTDTFR  DATE                                NOT NULL,
  EXPRDTTO  DATE,
  HOLICODE  VARCHAR2(5 BYTE)                    NOT NULL,
  HOLIDYNM  VARCHAR2(3 BYTE)                    NOT NULL,
  SEQUNUMB  INTEGER                             NOT NULL,
  ACTVFLAG  VARCHAR2(1 BYTE)                    NOT NULL,
  REMARKSS  VARCHAR2(250 BYTE),
  ROWNUMBR  VARCHAR2(10 BYTE),
  OPRSTAMP  VARCHAR2(8 BYTE)                    NOT NULL,
  TIMSTAMP  DATE                                NOT NULL
);

和数据:

Insert into HR_LK_WEEKEND
   (COMPCODE, STRTDTFR, EXPRDTTO, HOLICODE, HOLIDYNM, 
    SEQUNUMB, ACTVFLAG, REMARKSS, ROWNUMBR, OPRSTAMP, 
    TIMSTAMP)
 Values
   ('100', TO_DATE('01/01/2021 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/2021 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), 'HL021', 'FRI', 
    3, 'Y', NULL, 'HL02102', 'SYSTEM', 
    TO_DATE('08/16/2020 15:12:33', 'MM/DD/YYYY HH24:MI:SS'));
Insert into HR_LK_WEEKEND
   (COMPCODE, STRTDTFR, EXPRDTTO, HOLICODE, HOLIDYNM, 
    SEQUNUMB, ACTVFLAG, REMARKSS, ROWNUMBR, OPRSTAMP, 
    TIMSTAMP)
 Values
   ('100', TO_DATE('01/01/2021 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/2021 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), 'HL019', 'SAT', 
    4, 'Y', NULL, 'HL01902', 'SYSTEM', 
    TO_DATE('08/16/2020 15:14:15', 'MM/DD/YYYY HH24:MI:SS'));
COMMIT;


我想使用日期列获取日期范围之间的周末名称 STRTDTFR 以及 EXPRDTTO 介于 to_date('01/01/2021', 'DD/MM/RRRR') 以及 to_date('31/01/2021', 'DD/MM/RRRR') .
请告诉我如何得到这个解决方案。
我想要这样的输出:

Date        Weekend
    ===================
    01/01/2021  = FRI
    02/01/2021  = SAT
    08/01/2021  = FRI
    09/01/2021  = SAT
    15/01/2021  = FRI
    16/01/2021  = SAT
    22/01/2021  = FRI
    23/01/2021  = SAT
    29/01/2021  = FRI
    30/01/2021  = SAT

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题