Oracle,获取2个日期间有多少个周六和周日

Posted shangwanandy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle,获取2个日期间有多少个周六和周日相关的知识,希望对你有一定的参考价值。

函数:

CREATE OR REPLACE FUNCTION count_weekend(start_date IN DATE, end_date IN DATE)
RETURN NUMBER IS V_COUNT INT;
BEGIN
SELECT count(*) INTO V_COUNT
  FROM (SELECT start_date + num - 1,
               TO_CHAR(end_date + num - 1, ‘DAY‘) as t_date2
          FROM (SELECT rownum as num FROM obj)
         WHERE start_date + num - 1 <= end_date)
 WHERE t_date2 in (‘星期六‘, ‘星期日‘);
IF NVL(V_COUNT,0) > 0 THEN
    RETURN (V_COUNT);
  ELSE
    RETURN (0);
END IF;
EXCEPTION
  WHEN OTHERS THEN
     RETURN (-1);
END ;


















以上是关于Oracle,获取2个日期间有多少个周六和周日的主要内容,如果未能解决你的问题,请参考以下文章

获取2周前的周日和周六的日期

JAVA 取五个工作日后的日期(仅排除周六周日)

在 Oracle 中生成具有 2 个日期之间时间间隔的行

mysql 计算两个日期间有多少个2月29

oracle中怎么得到日期相减除去周末后的天数

oracle怎么计算两个日期之间去除周末的天数?