Oracle function实现根据输入的日期以及天数,获取此日期之后的天数的工作日

前提:在法定节日表(t_fdjr )中维护法定节日包括周六周天

/**
* 功能描述:根据输入的日期以及天数,获取此日期之后的天数的工作日
* 输入参数:
* i_date YYYY-MM-DD
* i_day 天数
*/
create or replace function fun_get_workday(i_date varchar2, i_day number)
return varchar2
is
 k int:=0;
 d1 date;
 d2 date;
begin
  k := i_day;
  d1 := to_date(i_date, ‘YYYY-MM-DD‘);
  d2 := d1 + k;
  while k > 0  loop
     select count(c_rq) into k from t_fdjr t
        where t.c_rq  > d1 and t.c_rq <= d2;
     d1 := d2;
     d2 := d2 + k;
  end loop;

 return to_char(d2,‘YYYY-MM-DD‘);
end;
时间: 2024-11-07 02:13:22

Oracle function实现根据输入的日期以及天数,获取此日期之后的天数的工作日的相关文章

编程题:用函数实现,用户输入年月日,来计算出该日期为当年第几天?

#include<stdio.h> /*函数is_leap_year()的返回值是判断该年是否闰年*/ int is_leap_year(int year) { int leap; if(year%4==0&&year%100!=0||year%400==0) leap=1; else leap=0; return leap; } /*函数len_of_month()的返回值为某年year的某月month的天数*/ int len_of_month(int year,int m

这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询。这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧!

日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 “SYSDATE”来指定查询的日期. SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month"      FROM DUAL; 获取当前月份的最后一天 这个查询语句类似于上面那个语句,而且充分照顾到了闰年,所以当二月份有 29 号,那么就会返回 29/2 .你可以用任何的日期值替换 “SYSDATE”来指定查询的日

oracle function

create or replace function get_take_item_activity (in_gift_id in number) --注意, oracle函数不能子啊 return之前 is , 或者定义变量 RETURN item_activity_type PIPELINED is cursor return_list is   select iir.*  from item_itcat_r iir   where iir.gift_id = in_gift_id; var_

Oracle Enterprise Manager 11g 输入用户名和口令 点击“登录”按键后没反应,也不报错,是什么原因?

在tnsnames.ora文件中检查设置好像没什么问题,用sqlplus也可以正常操作orcl 问题找到了,其实可简单,https://localhost:1158/em/console/logon/logon#,我用的是IE8打开这个地址,后来注意到左下角的状态栏里显示有“网页上有错误”的提示,于是改用Firefox打开,输入用户名和密码,登录就正常了.原因是IE8在解析这个页面时,部分js代码解析错误,我想这个跟微软的垄断霸王标准有关,他的很多规则不符合国际标准.所以电脑上还是多装个浏览器比

oracle数据库内置函数之数值函数、字符函数、日期函数、转换函数及其在查询语句中的运用

数值函数: 1.四舍五入函数round() from dual:一行一列组成 select round(23.4) from dual;--默认不写m表示m为0 select round(23.45,1) from dual;--1表示保留小数点后一位,那么是小数点的第二位四舍五入 select round(23.45,-1) from dual;---1表示小数点前一位四舍五入取整,前一位是3四舍五入为20 2.取整函数: select ceil(23.45),floor(23.45) fro

oracle获取系统日期--当前时间+前一天+当前月+前一个月

目录 获取系统日期: SYSDATE 当前日: 前一天: 前一天转换为日期格式: 前一个月日期: 前一个月: 后一个月转换为字符串: 补充:格式化日期 获取系统日期: SYSDATE当前日:select TRUNC(SYSDATE) from dual;前一天:select TRUNC(SYSDATE-1) from dual;前一天转换为日期格式:select to_char(TRUNC(SYSDATE-1),'fmdd') from dual;前一个月日期:select add_months

jsp日期插件My97DatePicker 强大的日期控件 使用方便简单

本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97DatePicker目录是一个整体,不可破坏里面的目录结构,也不可对里面的文件改名,可以改目录名 My97DatePicker.htm是必须文件,不可删除 各目录及文件的用途:WdatePicker.js 配置文件,在调用的地方仅需使用该文件,可多个共存,以xx_WdatePicker.js方式命名con

ABAP - 日期格式转换 &amp; ABAP常用日期处理函数

ABAP - 日期格式转换 现在提供以下一些日期格式转换的函数: Below are several FMs which can be used to convert date format. 1. CONVERSION_EXIT_IDATE_OUTPUT INPUT:      20080203 OUTPUT:   03FEB2008 2. CONVERT_DATE_TO_EXTERNAL INPUT:      20080203 OUTPUT:   02/03/2008    "Accord

SQL Server使用convert对datetime日期数据进行获取

来源:http://database.51cto.com/art/201007/211883.htm 备注:本文的语法讲解确实是比较乱,似乎格式不太严谨.参考时还是以实例验证为准比较好 以下的文章主要描述的是SQL Server使用convert取得datetime日期数据的实际操作流程,在实际操作中用SQL Server数据库中用convert来获取datetime日期数据,以下实例包含各种日期格式的转换. 语句及查询结果: Select CONVERT(varchar(100), GETDA